From 7ead10b00426e09aee2ea94bcd96b1d497f41ff4 Mon Sep 17 00:00:00 2001 From: Faran Javed Date: Tue, 20 May 2025 15:29:00 +0500 Subject: [PATCH 1/4] Fix link managed issue for the deployable items --- .../src/pages/setting/environments/config/apps.config.tsx | 1 + .../setting/environments/config/data-sources.config.tsx | 3 ++- .../src/pages/setting/environments/config/query.config.tsx | 3 ++- .../src/pages/setting/environments/services/apps.service.ts | 3 ++- .../setting/environments/services/datasources.service.ts | 6 ++++-- .../pages/setting/environments/services/query.service.ts | 3 ++- .../setting/environments/services/workspace.service.ts | 2 +- 7 files changed, 14 insertions(+), 7 deletions(-) diff --git a/client/packages/lowcoder/src/pages/setting/environments/config/apps.config.tsx b/client/packages/lowcoder/src/pages/setting/environments/config/apps.config.tsx index 1a09691c2..b2459abb7 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/config/apps.config.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/config/apps.config.tsx @@ -50,6 +50,7 @@ export const appsConfig: DeployableItemConfig = { publishOnTarget: values.publishOnTarget, publicToAll: values.publicToAll, publicToMarketplace: values.publicToMarketplace, + applicationGid: item.applicationGid, }; }, execute: (params: any) => deployApp(params) diff --git a/client/packages/lowcoder/src/pages/setting/environments/config/data-sources.config.tsx b/client/packages/lowcoder/src/pages/setting/environments/config/data-sources.config.tsx index 11e9e54fc..3ae507dd8 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/config/data-sources.config.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/config/data-sources.config.tsx @@ -23,7 +23,8 @@ export const dataSourcesConfig: DeployableItemConfig = { envId: sourceEnv.environmentId, targetEnvId: targetEnv.environmentId, datasourceId: item.id, - updateDependenciesIfNeeded: values.updateDependenciesIfNeeded + updateDependenciesIfNeeded: values.updateDependenciesIfNeeded, + datasourceGid: item.gid }; }, execute: (params: any) => deployDataSource(params) diff --git a/client/packages/lowcoder/src/pages/setting/environments/config/query.config.tsx b/client/packages/lowcoder/src/pages/setting/environments/config/query.config.tsx index 5396bd877..35189c8c9 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/config/query.config.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/config/query.config.tsx @@ -24,7 +24,8 @@ export const queryConfig: DeployableItemConfig = { envId: sourceEnv.environmentId, targetEnvId: targetEnv.environmentId, queryId: item.id, - updateDependenciesIfNeeded: values.updateDependenciesIfNeeded + updateDependenciesIfNeeded: values.updateDependenciesIfNeeded, + queryGid: item.gid, }; }, execute: (params: any) => deployQuery(params) diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts index bfd7ae348..a1705df24 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts @@ -18,6 +18,7 @@ export interface DeployAppParams { envId: string; targetEnvId: string; applicationId: string; + applicationGid: string; updateDependenciesIfNeeded?: boolean; publishOnTarget?: boolean; publicToAll?: boolean; @@ -125,7 +126,7 @@ export const deployApp = async (params: DeployAppParams): Promise => { if (response.status === 200) { await transferManagedObject( - params.applicationId, + params.applicationGid, params.envId, params.targetEnvId, ManagedObjectType.APP diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts index 694c28dd1..d4035a66e 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts @@ -20,7 +20,9 @@ export interface DeployDataSourceParams { envId: string; targetEnvId: string; datasourceId: string; + datasourceGid: string; updateDependenciesIfNeeded?: boolean; + } // Get data sources for a workspace - using your correct implementation export async function getWorkspaceDataSources( @@ -157,12 +159,12 @@ export async function deployDataSource(params: DeployDataSourceParams): Promise< envId: params.envId, targetEnvId: params.targetEnvId, datasourceId: params.datasourceId, - updateDependenciesIfNeeded: params.updateDependenciesIfNeeded ?? false + updateDependenciesIfNeeded: params.updateDependenciesIfNeeded ?? false, } }); if (response.status === 200) { await transferManagedObject( - params.datasourceId, + params.datasourceGid, params.envId, params.targetEnvId, ManagedObjectType.DATASOURCE diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts index 6801097be..d1c0d2255 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts @@ -15,6 +15,7 @@ export interface MergedQueriesResult { targetEnvId: string; queryId: string; updateDependenciesIfNeeded?: boolean; + queryGid: string; } @@ -84,7 +85,7 @@ export interface MergedQueriesResult { }); if (response.status === 200) { await transferManagedObject( - params.queryId, + params.queryGid, params.envId, params.targetEnvId, ManagedObjectType.QUERY diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/workspace.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/workspace.service.ts index 4f7978f3b..871c0e036 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/workspace.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/workspace.service.ts @@ -99,7 +99,7 @@ export async function deployWorkspace(params: { // After successful deployment, set the managed object in target environment if (response.status === 200) { await transferManagedObject( - params.workspaceId, + params.workspaceId, // first param has to be GID params.envId, params.targetEnvId, ManagedObjectType.ORG From 60f9b343a5fc0b09aab6451ffee7f84e07253f36 Mon Sep 17 00:00:00 2001 From: Faran Javed Date: Tue, 20 May 2025 16:15:44 +0500 Subject: [PATCH 2/4] Fix filters response for the APPS --- .../src/pages/setting/environments/services/apps.service.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts index a1705df24..8accb9db1 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/apps.service.ts @@ -80,7 +80,7 @@ export async function getMergedWorkspaceApps( // Fetch managed objects instead of managed apps let managedObjects: ManagedObject[] = []; try { - managedObjects = await getManagedObjects(environmentId); + managedObjects = await getManagedObjects(environmentId, ManagedObjectType.APP); } catch (error) { console.error("Failed to fetch managed objects:", error); // Continue with empty managed list From ed55d120c47cb21e2a0160f4aea1a884396bb980 Mon Sep 17 00:00:00 2001 From: Faran Javed Date: Tue, 20 May 2025 16:55:40 +0500 Subject: [PATCH 3/4] remove console logs --- .../src/pages/setting/environments/WorkspaceDetail.tsx | 1 - .../setting/environments/services/datasources.service.ts | 1 - .../setting/environments/services/enterprise.service.ts | 1 - .../environments/services/environments.service.ts | 8 ++------ .../pages/setting/environments/services/query.service.ts | 9 --------- 5 files changed, 2 insertions(+), 18 deletions(-) diff --git a/client/packages/lowcoder/src/pages/setting/environments/WorkspaceDetail.tsx b/client/packages/lowcoder/src/pages/setting/environments/WorkspaceDetail.tsx index b663b9ee5..83d93d05f 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/WorkspaceDetail.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/WorkspaceDetail.tsx @@ -34,7 +34,6 @@ const WorkspaceDetail: React.FC = () => { const { workspace, isLoading, error, toggleManagedStatus } = useWorkspaceContext(); const { openDeployModal } = useDeployModal(); - console.log("workspace render", workspace); const [isToggling, setIsToggling] = useState(false); diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts index d4035a66e..cca28176d 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/datasources.service.ts @@ -56,7 +56,6 @@ export async function getWorkspaceDataSources( orgId: workspaceId } }); - console.log("data source response",response); // Check if response is valid if (!response.data) { diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/enterprise.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/enterprise.service.ts index 1448e0bae..f0f9f1939 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/enterprise.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/enterprise.service.ts @@ -204,7 +204,6 @@ export async function getManagedQueries(environmentId: string): Promise environmentId } }); - console.log("Managed queries response function:", response.data); if (!response.data.data || !Array.isArray(response.data.data)) { return []; diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/environments.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/environments.service.ts index af1268918..e34c168b3 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/environments.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/environments.service.ts @@ -195,7 +195,6 @@ export async function getEnvironmentUserGroups( // Make the API request to get user groups const response = await axios.get(`${apiServiceUrl}/api/groups/list`, { headers }); - console.log(response); // Check if response is valid if (!response.data) { @@ -359,8 +358,7 @@ export async function getWorkspaceDataSources( orgId: workspaceId } }); - console.log("data source response",response); - + // Check if response is valid if (!response.data) { return []; @@ -434,7 +432,7 @@ export async function getWorkspaceQueries( if (!response.data) { return { queries: [], total: 0 }; } - console.log("RESPONSE DATA QUERIES",response.data.data); + // Map the response to include id field required by DeployableItem const queries = response.data.data.map(query => ({ ...query, @@ -444,8 +442,6 @@ export async function getWorkspaceQueries( managed: false // Default to unmanaged })); - console.log("queries",queries); - return { queries, total: response.data.total diff --git a/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts b/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts index d1c0d2255..4cf7a29be 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts +++ b/client/packages/lowcoder/src/pages/setting/environments/services/query.service.ts @@ -29,19 +29,15 @@ export interface MergedQueriesResult { // Fetch regular queries const regularQueries = await getWorkspaceQueries(workspaceId, apiKey, apiServiceUrl); - console.log("Regular queries response:", regularQueries); const managedObjects = await getManagedObjects(environmentId, ManagedObjectType.QUERY); - console.log("Managed queries response:", managedObjects); // Create a set of managed query GIDs for quick lookup const managedQueryGids = new Set(managedObjects.map(obj => obj.objGid)); - console.log("Managed query GIDs:", Array.from(managedQueryGids)); // Mark regular queries as managed if they exist in managed queries const mergedQueries = regularQueries.queries.map((query: Query) => { const isManaged = managedQueryGids.has(query.gid); - console.log(`Query ${query.name} (gid: ${query.gid}) is ${isManaged ? "managed" : "not managed"}`); return { ...query, @@ -52,11 +48,6 @@ export interface MergedQueriesResult { // Calculate stats const total = mergedQueries.length; const managed = mergedQueries.filter(query => query.managed).length; - console.log("Generated stats:", { - total, - managed, - unmanaged: total - managed - }); return { queries: mergedQueries, From 29a4fae4e14f1e4f300dddcdf49de8006b9cf367 Mon Sep 17 00:00:00 2001 From: Faran Javed Date: Tue, 20 May 2025 18:52:14 +0500 Subject: [PATCH 4/4] add err component and fix errors --- .../environments/EnvironmentDetail.tsx | 46 +++---------------- .../setting/environments/EnvironmentsList.tsx | 10 +--- .../setting/environments/WorkspaceDetail.tsx | 13 +++--- .../components/ErrorComponent.tsx | 38 +++++++++++++++ 4 files changed, 54 insertions(+), 53 deletions(-) create mode 100644 client/packages/lowcoder/src/pages/setting/environments/components/ErrorComponent.tsx diff --git a/client/packages/lowcoder/src/pages/setting/environments/EnvironmentDetail.tsx b/client/packages/lowcoder/src/pages/setting/environments/EnvironmentDetail.tsx index 2106d8d3d..89f32f495 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/EnvironmentDetail.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/EnvironmentDetail.tsx @@ -27,7 +27,7 @@ import UserGroupsTab from "./components/UserGroupsTab"; import EnvironmentHeader from "./components/EnvironmentHeader"; import ModernBreadcrumbs from "./components/ModernBreadcrumbs"; import { getEnvironmentTagColor } from "./utils/environmentUtils"; -const { Title, Text } = Typography; +import ErrorComponent from './components/ErrorComponent'; const { TabPane } = Tabs; /** @@ -80,50 +80,18 @@ const EnvironmentDetail: React.FC = () => { if (isLoading) { return (
- +
); } if (error || !environment) { - const errorItems = [ - { - key: 'environments', - title: ( - - Environments - - ), - onClick: () => history.push("/setting/environments") - }, - { - key: 'notFound', - title: 'Not Found' - } - ]; - return ( -
- - - -
- - Environment Not Found - - - {error || "The environment you're looking for doesn't exist or you don't have permission to view it."} - - -
-
-
+ ); } diff --git a/client/packages/lowcoder/src/pages/setting/environments/EnvironmentsList.tsx b/client/packages/lowcoder/src/pages/setting/environments/EnvironmentsList.tsx index 613ed47a2..cc7a9dc00 100644 --- a/client/packages/lowcoder/src/pages/setting/environments/EnvironmentsList.tsx +++ b/client/packages/lowcoder/src/pages/setting/environments/EnvironmentsList.tsx @@ -139,10 +139,7 @@ const EnvironmentsList: React.FC = () => { borderRadius: '12px', boxShadow: '0 2px 8px rgba(0,0,0,0.05)' }} - headStyle={{ - borderBottom: '1px solid #f0f0f0', - padding: '16px 24px' - }} + styles={{ header: { borderBottom: '1px solid #f0f0f0', padding: '16px 24px' } }} bodyStyle={{ padding: '24px' }} > @@ -191,10 +188,7 @@ const EnvironmentsList: React.FC = () => { borderRadius: '12px', boxShadow: '0 2px 8px rgba(0,0,0,0.05)', }} - headStyle={{ - borderBottom: '1px solid #f0f0f0', - padding: '16px 24px' - }} + styles={{ header: { borderBottom: '1px solid #f0f0f0', padding: '16px 24px' } }} bodyStyle={{ padding: '24px' }} extra={ { if (isLoading) { return (
- +
); } if (error || !environment || !workspace) { return ( -
- - {error || "Workspace not found"} - -
+ ); } diff --git a/client/packages/lowcoder/src/pages/setting/environments/components/ErrorComponent.tsx b/client/packages/lowcoder/src/pages/setting/environments/components/ErrorComponent.tsx new file mode 100644 index 000000000..2f4d5fbac --- /dev/null +++ b/client/packages/lowcoder/src/pages/setting/environments/components/ErrorComponent.tsx @@ -0,0 +1,38 @@ +import React from 'react'; +import { Card, Button, Typography } from 'antd'; +import { HomeOutlined } from '@ant-design/icons'; +import history from '@lowcoder-ee/util/history'; + +const { Title, Text } = Typography; + +interface ErrorComponentProps { + errorMessage: string; + returnPath: string; + returnLabel: string; +} + +const ErrorComponent: React.FC = ({ errorMessage, returnPath, returnLabel }) => { + return ( +
+ +
+ + {errorMessage} + + + The item you're looking for doesn't exist or you don't have permission to view it. + + +
+
+
+ ); +}; + +export default ErrorComponent; pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy