diff --git a/frontend/src/Editor/ManageAppUsers.jsx b/frontend/src/Editor/ManageAppUsers.jsx index cd8d858c73..6114a4a228 100644 --- a/frontend/src/Editor/ManageAppUsers.jsx +++ b/frontend/src/Editor/ManageAppUsers.jsx @@ -36,7 +36,6 @@ class ManageAppUsersComponent extends React.Component { } fetchAppUsers = (appId) => { - console.log('---arpit [manager users]:; ', { x: this.props }); appService .getAppUsers(appId) .then((data) => diff --git a/frontend/src/Editor/Viewer.jsx b/frontend/src/Editor/Viewer.jsx index 98f804f754..9e68c0d4cf 100644 --- a/frontend/src/Editor/Viewer.jsx +++ b/frontend/src/Editor/Viewer.jsx @@ -80,9 +80,15 @@ class ViewerComponent extends React.Component { }; } - setStateForApp = (data) => { + setStateForApp = (data, byAppSlug = false) => { const appDefData = buildAppDefinition(data); + if (byAppSlug) { + appDefData.globalSettings = data.globalSettings; + appDefData.homePageId = data.homePageId; + appDefData.showHideViewerNavigation = data.showHideViewerNavigation; + } + this.setState({ app: data, isLoading: false, @@ -116,10 +122,17 @@ class ViewerComponent extends React.Component { } let queryState = {}; - const { data_queries } = await dataqueryService.getAll(appVersionId); + let dataQueries = []; - if (data_queries.length > 0) { - data_queries.forEach((query) => { + if (appVersionId) { + const { data_queries } = await dataqueryService.getAll(appVersionId); + dataQueries = data_queries; + } else { + dataQueries = data.data_queries; + } + + if (dataQueries.length > 0) { + dataQueries.forEach((query) => { if (query.pluginId || query?.plugin?.id) { queryState[query.name] = { ...query.plugin.manifestFile.data.source.exposedVariables, @@ -139,12 +152,12 @@ class ViewerComponent extends React.Component { const constants = await this.fetchOrgEnvironmentConstants(data.slug, data.is_public); const pages = data.pages; - const homePageId = data.editing_version.homePageId; + const homePageId = appVersionId ? data.editing_version.homePageId : data?.homePageId; const startingPageHandle = this.props?.params?.pageHandle; const currentPageId = pages.filter((page) => page.handle === startingPageHandle)[0]?.id ?? homePageId; const currentPage = pages.find((page) => page.id === currentPageId); - useDataQueriesStore.getState().actions.setDataQueries(data_queries); + useDataQueriesStore.getState().actions.setDataQueries(dataQueries); this.props.setCurrentState({ queries: queryState, components: {}, @@ -179,10 +192,11 @@ class ViewerComponent extends React.Component { ? `${this.state.deviceWindowWidth}px` : '1292px', selectedComponent: null, - dataQueries: data_queries, + dataQueries: dataQueries, currentPageId: currentPage.id, pages: {}, homepage: appDefData?.pages?.[this.state.appDefinition?.homePageId]?.handle, + event: data.events ?? [], }, () => { const components = appDefData?.pages[currentPageId]?.components || {}; @@ -190,7 +204,7 @@ class ViewerComponent extends React.Component { computeComponentState(components).then(async () => { this.setState({ initialComputationOfStateDone: true, defaultComponentStateComputed: true }); console.log('Default component state computed and set'); - this.runQueries(data_queries); + this.runQueries(dataQueries); // eslint-disable-next-line no-unsafe-optional-chaining // const { events } = this.state.appDefinition?.pages[this.state.currentPageId]; // for (const event of events ?? []) { @@ -264,7 +278,7 @@ class ViewerComponent extends React.Component { appService .getAppBySlug(slug) .then((data) => { - this.setStateForApp(data); + this.setStateForApp(data, true); this.setStateForContainer(data); this.setWindowTitle(data.name); }) diff --git a/server/src/controllers/apps.controller.ts b/server/src/controllers/apps.controller.ts index 327c5b2248..75292517b1 100644 --- a/server/src/controllers/apps.controller.ts +++ b/server/src/controllers/apps.controller.ts @@ -136,6 +136,9 @@ export class AppsController { ? await this.appsService.findVersion(app.currentVersionId) : await this.appsService.findVersion(app.editingVersion?.id); + const pagesForVersion = app.editingVersion ? await this.pageService.findPagesForVersion(versionToLoad.id) : []; + const eventsForVersion = app.editingVersion ? await this.eventsService.findEventsForVersion(versionToLoad.id) : []; + // serialize return { current_version_id: app['currentVersionId'], @@ -145,6 +148,11 @@ export class AppsController { is_maintenance_on: app.isMaintenanceOn, name: app.name, slug: app.slug, + events: eventsForVersion, + pages: pagesForVersion, + homePageId: versionToLoad.homePageId, + globalSettings: versionToLoad.globalSettings, + showHideViewerNavigation: versionToLoad.showViewerNavigation, }; } diff --git a/server/src/services/app_import_export.service.ts b/server/src/services/app_import_export.service.ts index 85659f5c58..5e3dd36923 100644 --- a/server/src/services/app_import_export.service.ts +++ b/server/src/services/app_import_export.service.ts @@ -305,13 +305,6 @@ export class AppImportExportService { appResourceMappings.dataQueryMapping ); - console.log( - '---arpit--- importingAppVersion', - JSON.stringify({ - updatedDefinition, - }) - ); - // !----- let updateHomepageId = null;