This is an automated email from the ASF dual-hosted git repository.
likyh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
The following commit(s) were added to refs/heads/main by this push:
new ecec0c473 fix(config-ui): create blueprint (#3917)
ecec0c473 is described below
commit ecec0c4732438132f35720e695d4b19d7425991b
Author: 青湛 <[email protected]>
AuthorDate: Tue Dec 13 13:34:16 2022 +0800
fix(config-ui): create blueprint (#3917)
* fix(config-ui): one connection link failed will make all failed
* fix(config-ui): miss depends step on create bp error
* fix(config-ui): adjust the payload on create bp
* fix(config-ui): adjust the style for plugin and create bp
---
.../blueprint/create/hooks/use-blueprint-value.ts | 7 +-
config-ui/src/pages/blueprint/create/styled.ts | 14 ++--
.../src/plugins/common/transformation/styled.ts | 4 +-
config-ui/src/plugins/github/styled.ts | 8 +--
.../webook/components/create-dialog/styled.ts | 2 +-
.../components/view-or-edit-dialog/styled.ts | 2 +-
config-ui/src/store/connections/use-connections.ts | 84 ++++++++++++----------
7 files changed, 65 insertions(+), 56 deletions(-)
diff --git a/config-ui/src/pages/blueprint/create/hooks/use-blueprint-value.ts
b/config-ui/src/pages/blueprint/create/hooks/use-blueprint-value.ts
index 641bbb3e3..ad27b4f05 100644
--- a/config-ui/src/pages/blueprint/create/hooks/use-blueprint-value.ts
+++ b/config-ui/src/pages/blueprint/create/hooks/use-blueprint-value.ts
@@ -75,7 +75,7 @@ export const useBlueprintValue = ({ from, projectName }:
Props) => {
default:
return ''
}
- }, [name, mode, rawPlan, connections])
+ }, [name, mode, rawPlan, connections, step])
const payload = useMemo(() => {
const params: any = {
@@ -94,7 +94,10 @@ export const useBlueprintValue = ({ from, projectName }:
Props) => {
connections: connections.map((cs) => ({
plugin: cs.plugin,
connectionId: cs.id,
- scope: cs.scope
+ scopes: cs.scope.map((sc) => ({
+ ...sc,
+ id: `${sc.id}`
+ }))
}))
}
}
diff --git a/config-ui/src/pages/blueprint/create/styled.ts
b/config-ui/src/pages/blueprint/create/styled.ts
index 23dddf376..07595e0fb 100644
--- a/config-ui/src/pages/blueprint/create/styled.ts
+++ b/config-ui/src/pages/blueprint/create/styled.ts
@@ -59,32 +59,32 @@ export const Card = styled.div`
font-weight: 600;
}
- .bp3-input-group > input {
+ .bp4-input-group > input {
font-size: 12px;
}
- .bp3-tag-input-values > input {
+ .bp4-tag-input-values > input {
font-size: 12px;
}
- textarea.bp3-input {
+ textarea.bp4-input {
min-height: 240px;
font-family: 'JetBrains Mono', monospace;
font-size: 10px;
background-color: #f9f9f9;
}
- .bp3-button-group {
+ .bp4-button-group {
display: block;
margin-top: 8px;
text-align: right;
- .bp3-button + .bp3-button {
+ .bp4-button + .bp4-button {
margin-left: 4px;
}
}
- .bp3-button.bp3-small {
+ .bp4-button.bp4-small {
font-size: 12px;
}
@@ -95,7 +95,7 @@ export const Card = styled.div`
color: #7497f7;
cursor: pointer;
- span.bp3-icon {
+ span.bp4-icon {
margin-right: 4px;
cursor: pointer;
}
diff --git a/config-ui/src/plugins/common/transformation/styled.ts
b/config-ui/src/plugins/common/transformation/styled.ts
index de7dd4d8a..a6acb1f85 100644
--- a/config-ui/src/plugins/common/transformation/styled.ts
+++ b/config-ui/src/plugins/common/transformation/styled.ts
@@ -28,12 +28,12 @@ export const Container = styled.div`
0px 1.6px 8px rgba(0, 0, 0, 0.07);
border-radius: 8px;
- & > .bp3-button-group {
+ & > .bp4-button-group {
display: block;
margin-top: 16px;
text-align: right;
- .bp3-button + .bp3-button {
+ .bp4-button + .bp4-button {
margin-left: 4px;
}
}
diff --git a/config-ui/src/plugins/github/styled.ts
b/config-ui/src/plugins/github/styled.ts
index 26900abe2..35fc9640e 100644
--- a/config-ui/src/plugins/github/styled.ts
+++ b/config-ui/src/plugins/github/styled.ts
@@ -22,20 +22,20 @@ export const TransformationWrapper = styled.div`
h3 {
margin: 0 0 8px;
- .bp3-tag {
+ .bp4-tag {
margin-left: 6px;
}
}
- .bp3-form-group {
+ .bp4-form-group {
display: flex;
align-items: center;
- .bp3-label {
+ .bp4-label {
flex: 0 0 150px;
}
- .bp3-form-content {
+ .bp4-form-content {
flex: auto;
}
}
diff --git a/config-ui/src/plugins/webook/components/create-dialog/styled.ts
b/config-ui/src/plugins/webook/components/create-dialog/styled.ts
index 99d20448d..347b93853 100644
--- a/config-ui/src/plugins/webook/components/create-dialog/styled.ts
+++ b/config-ui/src/plugins/webook/components/create-dialog/styled.ts
@@ -30,7 +30,7 @@ export const Wrapper = styled.div`
font-weight: 600;
color: ${Colors.GREEN5};
- .bp3-icon {
+ .bp4-icon {
margin-right: 8px;
}
}
diff --git
a/config-ui/src/plugins/webook/components/view-or-edit-dialog/styled.ts
b/config-ui/src/plugins/webook/components/view-or-edit-dialog/styled.ts
index 661a33f23..0c5fb5b9c 100644
--- a/config-ui/src/plugins/webook/components/view-or-edit-dialog/styled.ts
+++ b/config-ui/src/plugins/webook/components/view-or-edit-dialog/styled.ts
@@ -29,7 +29,7 @@ export const Wrapper = styled.div`
font-weight: 600;
color: ${Colors.GREEN5};
- .bp3-icon {
+ .bp4-icon {
margin-right: 8px;
}
}
diff --git a/config-ui/src/store/connections/use-connections.ts
b/config-ui/src/store/connections/use-connections.ts
index dad82d490..122dd26a4 100644
--- a/config-ui/src/store/connections/use-connections.ts
+++ b/config-ui/src/store/connections/use-connections.ts
@@ -22,7 +22,7 @@ import { Plugins } from '@/registry'
import type { ConnectionItemType } from './types'
import { ConnectionStatusEnum } from './types'
-import { getConnection, testConnection } from './api'
+import * as API from './api'
export const useConnections = (plugin?: string | string[]) => {
const [loading, setLoading] = useState(false)
@@ -37,46 +37,52 @@ export const useConnections = (plugin?: string | string[])
=> {
[plugin]
)
- const handleRefresh = useCallback(async () => {
- setLoading(true)
-
+ const getConnection = async (plugin: string) => {
try {
- const res = await Promise.all(
- allConnections.map((cs) => getConnection(cs.id))
- )
+ return await API.getConnection(plugin)
+ } catch {
+ return []
+ }
+ }
- const resWithPlugin = res.map((cs, i) =>
- cs.map((it: any) => {
- const { id, icon, availableDataDomains } = allConnections[i] as any
-
- return {
- ...it,
- plugin: id,
- icon: `/${icon}`,
- entities: availableDataDomains
- }
- })
- )
+ const handleRefresh = useCallback(async () => {
+ setLoading(true)
- setConnections(
- resWithPlugin.flat().map((it) => ({
- unique: `${it.plugin}-${it.id}`,
- status: ConnectionStatusEnum.NULL,
- plugin: it.plugin,
- id: it.id,
- name: it.name,
- icon: it.icon,
- entities: it.entities,
- endpoint: it.endpoint,
- proxy: it.proxy,
- token: it.token,
- username: it.username,
- password: it.password
- }))
- )
- } finally {
- setLoading(false)
- }
+ const res = await Promise.all(
+ allConnections.map((cs) => getConnection(cs.id))
+ )
+
+ const resWithPlugin = res.map((cs, i) =>
+ cs.map((it: any) => {
+ const { id, icon, availableDataDomains } = allConnections[i] as any
+
+ return {
+ ...it,
+ plugin: id,
+ icon: `/${icon}`,
+ entities: availableDataDomains
+ }
+ })
+ )
+
+ setConnections(
+ resWithPlugin.flat().map((it) => ({
+ unique: `${it.plugin}-${it.id}`,
+ status: ConnectionStatusEnum.NULL,
+ plugin: it.plugin,
+ id: it.id,
+ name: it.name,
+ icon: it.icon,
+ entities: it.entities,
+ endpoint: it.endpoint,
+ proxy: it.proxy,
+ token: it.token,
+ username: it.username,
+ password: it.password
+ }))
+ )
+
+ setLoading(false)
}, [allConnections])
useEffect(() => {
@@ -114,7 +120,7 @@ export const useConnections = (plugin?: string | string[])
=> {
let status
try {
- const res = await testConnection(plugin, {
+ const res = await API.testConnection(plugin, {
endpoint,
proxy,
token,