ToolJet/server/data-migrations/1697473340856-MigrateAppsDefinitionSchemaTransition.ts

386 lines
13 KiB
TypeScript
Raw Normal View History

Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
import { In, MigrationInterface, QueryRunner, EntityManager } from 'typeorm';
import { AppVersion } from '../src/entities/app_version.entity';
import { Component } from 'src/entities/component.entity';
import { Page } from 'src/entities/page.entity';
import { Layout } from 'src/entities/layout.entity';
import { EventHandler, Target } from 'src/entities/event_handler.entity';
import { DataQuery } from 'src/entities/data_query.entity';
import { MigrationProgress, processDataInBatches } from 'src/helpers/utils.helper';
import { v4 as uuid } from 'uuid';
interface AppResourceMappings {
pagesMapping: Record<string, string>;
componentsMapping: Record<string, string>;
}
export class MigrateAppsDefinitionSchemaTransition1697473340856 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<void> {
const entityManager = queryRunner.manager;
const appVersionRepository = entityManager.getRepository(AppVersion);
const appVersions = await appVersionRepository.find();
const totalVersions = appVersions.length;
const migrationProgress = new MigrationProgress(
'MigrateAppsDefinitionSchemaTransition1697473340856',
totalVersions
);
const batchSize = 100; // Number of apps to migrate at a time
await processDataInBatches(
entityManager,
async (entityManager: EntityManager, skip: number, take: number) => {
return entityManager.find(AppVersion, {
where: { id: In(appVersions.map((appVersion) => appVersion.id)) },
take,
skip,
});
},
async (entityManager: EntityManager, versions: AppVersion[]) => {
await this.processVersions(entityManager, versions, migrationProgress);
},
batchSize
);
}
private async processVersions(
entityManager: EntityManager,
versions: AppVersion[],
migrationProgress: MigrationProgress
) {
for (const version of versions) {
const definition = version['definition'];
if (!definition) return;
const dataQueriesRepository = entityManager.getRepository(DataQuery);
const dataQueries = await dataQueriesRepository.find({
where: { appVersionId: version.id },
});
let updateHomepageId = null;
const appResourceMappings: AppResourceMappings = {
pagesMapping: {},
componentsMapping: {},
};
if (definition?.pages) {
for (const pageId of Object.keys(definition?.pages)) {
const page = definition.pages[pageId];
const pagePositionInTheList = Object.keys(definition?.pages).indexOf(pageId);
const pageEvents = page.events || [];
const pageComponents = page.components;
const isHomepage = (definition['homePageId'] as any) === pageId;
const componentEvents = [];
const componentLayouts = [];
const transformedComponents = this.transformComponentData(
pageComponents,
componentEvents,
appResourceMappings.componentsMapping
);
const newPage = entityManager.create(Page, {
name: page.name || page.handle || pageId,
handle: page.handle || pageId,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
appVersionId: version.id,
disabled: page.disabled || false,
hidden: page.hidden || false,
index: pagePositionInTheList,
});
const pageCreated = await entityManager.save(newPage);
appResourceMappings.pagesMapping[pageId] = pageCreated.id;
transformedComponents.forEach((component) => {
component.page = pageCreated;
});
const savedComponents = await entityManager.save(Component, transformedComponents);
for (const componentId in pageComponents) {
const componentLayout = pageComponents[componentId]['layouts'];
if (componentLayout && appResourceMappings.componentsMapping[componentId]) {
for (const type in componentLayout) {
const layout = componentLayout[type];
const newLayout = new Layout();
newLayout.type = type;
newLayout.top = layout.top;
newLayout.left = layout.left;
newLayout.width = layout.width;
newLayout.height = layout.height;
newLayout.componentId = appResourceMappings.componentsMapping[componentId];
componentLayouts.push(newLayout);
}
}
}
await entityManager.save(Layout, componentLayouts);
if (pageEvents.length > 0) {
pageEvents.forEach(async (event, index) => {
const newEvent = {
name: event.eventId || `${pageCreated.name} Page Event ${index}`,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
sourceId: pageCreated.id,
target: Target.page,
event: event,
index: index,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
appVersionId: version.id,
};
await entityManager.save(EventHandler, newEvent);
});
}
componentEvents.forEach((eventObj) => {
if (eventObj.event?.length === 0) return;
eventObj.event.forEach(async (event, index) => {
const newEvent = {
name: event.eventId || `event ${index}`,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
sourceId: appResourceMappings.componentsMapping[eventObj.componentId],
target: Target.component,
event: event,
index: index,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
appVersionId: version.id,
};
await entityManager.save(EventHandler, newEvent);
});
});
savedComponents.forEach(async (component) => {
if (component.type === 'Table') {
const tableActions = component.properties?.actions?.value || [];
const tableColumns = component.properties?.columns?.value || [];
const tableActionAndColumnEvents = [];
tableActions.forEach((action) => {
const actionEvents = action.events || [];
actionEvents.forEach((event, index) => {
tableActionAndColumnEvents.push({
name: event.eventId,
sourceId: component.id,
target: Target.tableAction,
event: { ...event, ref: action.name },
index: event.index ?? index,
appVersionId: version.id,
});
});
});
tableColumns.forEach((column) => {
if (column?.columnType !== 'toggle') return;
const columnEvents = column.events || [];
columnEvents.forEach((event, index) => {
tableActionAndColumnEvents.push({
name: event.eventId || `event ${index}`,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
sourceId: component.id,
target: Target.tableColumn,
event: { ...event, ref: column.name },
index: index,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
appVersionId: version.id,
});
});
});
await entityManager.save(EventHandler, tableActionAndColumnEvents);
}
});
if (isHomepage) {
updateHomepageId = pageCreated.id;
}
}
}
for (const dataQuery of dataQueries) {
const queryEvents = dataQuery?.options?.events || [];
if (queryEvents.length > 0) {
queryEvents.forEach(async (event, index) => {
const newEvent = {
name: event.eventId || `${dataQuery.name} Query Event ${index}`,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
sourceId: dataQuery.id,
target: Target.dataQuery,
event: event,
index: index,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
appVersionId: version.id,
};
await entityManager.save(EventHandler, newEvent);
});
}
}
let globalSettings = definition?.globalSettings;
if (!definition?.globalSettings) {
globalSettings = {
hideHeader: false,
appInMaintenance: false,
canvasMaxWidth: 100,
canvasMaxWidthType: '%',
canvasMaxHeight: 2400,
canvasBackgroundColor: '#edeff5',
backgroundFxQuery: '',
};
}
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
await entityManager.update(
AppVersion,
{ id: version.id },
{
homePageId: updateHomepageId,
showViewerNavigation: definition?.showViewerNavigation || true,
globalSettings: globalSettings,
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
}
);
await this.updateEventActionsForNewVersionWithNewMappingIds(
entityManager,
version.id,
appResourceMappings.componentsMapping,
appResourceMappings.pagesMapping
);
migrationProgress.show();
}
}
async updateEventActionsForNewVersionWithNewMappingIds(
manager: EntityManager,
versionId: string,
oldComponentToNewComponentMapping: Record<string, unknown>,
oldPageToNewPageMapping: Record<string, unknown>
) {
const allEvents = await manager.find(EventHandler, {
where: { appVersionId: versionId },
});
if (!allEvents || allEvents.length === 0) return;
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
for (const event of allEvents) {
const eventDefinition = event.event;
if (eventDefinition?.actionId === 'switch-page') {
eventDefinition.pageId = oldPageToNewPageMapping[eventDefinition.pageId];
}
if (eventDefinition?.actionId === 'control-component') {
eventDefinition.componentId = oldComponentToNewComponentMapping[eventDefinition.componentId];
}
if (eventDefinition?.actionId == 'show-modal' || eventDefinition?.actionId === 'close-modal') {
eventDefinition.modal = oldComponentToNewComponentMapping[eventDefinition.modal];
}
event.event = eventDefinition;
await manager.save(event);
}
}
private transformComponentData(
data: object,
componentEvents: any[],
componentsMapping: Record<string, string>
): Component[] {
if (!data) return [];
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
const transformedComponents: Component[] = [];
const allComponents = Object.keys(data).map((key) => {
return {
id: key,
...data[key],
};
});
if (!allComponents || allComponents.length === 0) return [];
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
for (const componentId in data) {
const component = data[componentId];
if (!component) return;
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
const componentData = component['component'];
if (!componentData?.component) return;
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
let skipComponent = false;
const transformedComponent: Component = new Component();
let parentId = component.parent ? component.parent : null;
const isParentTabOrCalendar = this.isChildOfTabsOrCalendar(component, allComponents, parentId);
if (isParentTabOrCalendar) {
const childTabId = component?.parent.split('-')[component?.parent.split('-').length - 1];
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
const _parentId = component?.parent?.split('-').slice(0, -1).join('-');
const mappedParentId = componentsMapping[_parentId];
parentId = `${mappedParentId}-${childTabId}`;
} else {
if (component.parent && !componentsMapping[parentId]) {
skipComponent = true;
}
parentId = componentsMapping[parentId];
}
if (!skipComponent) {
transformedComponent.id = uuid();
transformedComponent.name = componentData.name || componentId;
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
transformedComponent.type = componentData.component;
transformedComponent.properties = componentData?.definition?.properties || {};
transformedComponent.styles = componentData?.definition?.styles || {};
transformedComponent.validation = componentData?.definition?.validation || {};
transformedComponent.general = componentData?.definition?.general || {};
transformedComponent.generalStyles = componentData?.definition?.generalStyles || {};
transformedComponent.displayPreferences = componentData?.definition?.others || {};
transformedComponent.parent = component?.parent ? parentId : null;
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
transformedComponents.push(transformedComponent);
componentEvents.push({
componentId: componentId,
event: componentData?.definition?.events || [],
Release : Appbuilder - appdefinition architecture revamp (#7448) * importing service: updated * import service, categorize and update events with associations * fix: deleting events associated with pages on page delete * handle app version: creation, updates, switching versions from app builder * on version switch: no updates should be triggeted to server * versioning for query events * fixes: new components db transaction fails for newly created pages * fixes: query chaining with events * map older query ids to new for event action: run query * fixes: multi-editor support * fixes/multi-editor: users should be able to edit different version of the app at real time without sync * minor fixes * fixes: undo/redo savings with latest app def updates * fixes: execution of page switch action * fixes: csa events * fixes: csa selection dropdown * fixes: on csa action changed, the action params should also be updated correctly * fixes: event rendering actions * fixes: table event - row hovered * fixes: table event - on search * fixes: table event - onNewRowsAdded * fixes: table event - onBulkUpdate * fixes: table column updates * fixes: table column updates to component definition * re-order events * handle adding widgets to sub containers * fixes: csa for modals * fixes: deletes children components on deleting parent * fixes: components with default children * fixed events for imported app * gs- crash fix * fixes: global settings UI * fixes: header and user * fixes: page switch event * fixes: adapts to new event manager ui * import app * add event index for creating app versions * fixes: table rendering on viewer * fixes: event execution for viewer * fixes: loading app with slug * fixes: Page side bar is not rendered in viewer * fixes: version manager ui for released versions * fixes: tabs default children saving * fixes: app resource mapping for parent-child components * fixes: duplicate pages * fixes: page load events for viewer * fixes: enable and disable pages * fixes: hide and show pages * fixes: on maintaince toggle button * fixes: new version child components are not tied to its parent * fixes: redo breaks- on deleting a component and undo then redo (editor) * new export schema and handling apps impport with new and older schemas * table events: column and actions events * fixes: query confirmations popup * fixes: copy/paste * fixes: cut/paste * fixes: event mapping for newer versions for new components, pages and queries id * fixes: app resource mapping for imported apps * fixes: cascade events for table actions and colulmns * Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table. * cleanup * fixes: enable and disable pages * fixes: hide/show page and set saving state for cloning pages * cleanup * fixes: page disable menu * fixes: migrations for data query events * fixes: switching app version from version creation modal results in editor loading state * fixes: setting up the page title * fixes: Page duplication has same page handler name. * fixes: updating general styles of a component * fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion * fixes: CSA for button(component) does not work for page event handler. * fixes: component name update [calendar] * fixes: Duplicating pages do not create child components * improves copy-paste mechanism of widgets * fix: calendar subcontainer components comes out of the parent container on copy/paste * fix:Form properties, no option for selecting submit button. * fixes: Dark mode issue with event handler. * fixes: display preferences for components * fixes:have to select the selected version again to create a new * fixes: Pages menu is not getting disabled when enabled and vice-versa * fixes: correct naming of duplicating pages * fixes: 2 action button even with no event attached to one, it gets attached to both. * fixes: event deletion for action btn removal * fixes: Keyboard action to move component is not saving * reduce outbound calls when widget re-positioned with keyboard * fixes: Not able to delete component from Inspector * fixes: cloning of widgets * fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on) * fixes: event sorting * fixes: events mapping for versioning: queries and components * fixes: importing app bug - query running issue when importing apps * [appdef-2.0] fixes: event action linking for imported apps (#7627) * fixes: event action linking for imported apps * cleanup * fixes: Toggling display preferences is not saving for components. (#7629) * fixes: dnd issue for mobile view (#7632) * default page menu settings should be true * [appdef-2] event manager selector bug (#7631) * fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui * reduces outbound calls for updating csa actions to 1 * [appdef] - copy associated events for cloned components (#7634) * fixes: Copying component is not coping the events associated with the component. * cleanup * [appdef-2] : Fixes frontend issues (#7636) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * Fix white background around canvas * fixes: Component inspector go blank after switching to different pages after dropping components (#7637) * fixes: general properties of widgets are not getting saved (#7638) * fixes: selecting the components via selecto (#7653) * fixes: multiple undo-redo simlut. (#7656) * fixes: copy associated events for cloned queries (#7657) * Fixes not able toggle of Listview pagination toggle (#7701) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * fixes: dnd fix for widgets dropped inside subcontainer (#7691) * [Appdef-2] copy-paste, cut and clone fix for widgets (#7687) * fixes: copy/cut/paste and cloning of widgets * cleanup * can copy/paste-clone in listview * fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688) * fixes: on deleting tabs widgets should delete its children (#7692) * fixes: column data generated from restapi does not render correct columns in viewer (#7695) * [appdef-2] fixes: multiple query confirmations trigger (#7704) * fixes: multiple query confirmations trigger * fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer * fixes: correct confirmations list to the stote * [appdef-2] fixes:Event handler are running twice for page load (#7705) * fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page). * fixes: for viewer page events * fixes: container widget is not getting saved on drop (#7718) * fixes: Create app version from is empty if we delete another version. (#7720) * [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721) * fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd * fixes: container widget is not saving * fixes: triggering confirmation box for every query with on load trigger (#7728) * Fixes canvas background and go to app crashing (#7725) * Fix UI issues * Fix Scrollbar is not available after we pin the inspector. * Fix button jumping places if switched from extended monitor to laptop. * fix enable pagination not getting toggled in listview * Fix form children not being displayed * Fix Go to app is crashing the application. * Fix fx for canvas background color is not working. * fixes: cloned/copied table with actions (#7758) * fixes: calendar and form widgets (#7735) * fixes: rendering of components in viewer for mobile (#7759) * fixes: toggling, resizing, dropping widgets in both display preferences (#7760) * fixes: page switch action via runjs actions (#7762) * fixes: component validations do not get saved (#7766) * [appdef-2] subcontainer dnd height outbound fix (#7767) * fixes: listview children can be dragged outside its outbound limit * cleanup * fixes: widget inspector going to empty component (#7768) * fixes: goToApp not running from runjs in viewer mode (#7770) * fixes: multi-components cloning or copy/paste have same name (#7761) * Fix disabled page is being displayed on switch page event dropdown (#7769) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix Kanban widget getting into infinite loop (#7808) * Fix kanban rendering leading to infinite look * Fix disabled page is being displayed on switch page event dropdown * Fix kanban getting into infinite loop * adds support of constants to current state of the ediotr (#7821) * removes loader added for testing (#7822) * [appdef] fixes - dnd container cloning edge cases (#7820) * fixes: copy/pasting components updating wrong display preferences * fixes: copy/pasting tabs and cloning components inside tabs * fixes: duplication of calendar component bug * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication * fixes: Resolving App Version and Timestamp Update Challenges (#7863) * Fixes query confirmation issue on viewer (#7862) * [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867) * fixes: components copied from template app to a new page or app does not render in canvas * fixes: table crash on coping from other pages with columns * adds the column exists check * fixes: tables crash for imported apps with auto generated cols * appdefinition refactor/cleanup (#7872) * cleanup controllers and request calls from frontend * removing unwanted console logs and unused variables * revering v1 apis og * adding length validation for page dto * adding dtos for components * updated dtos for components and pages * added dto for event handlers * fixes event handler dto * fixes: page dto * adds/fixes event handlers creating dtp * fixes: event handler service and dtos * [appdef] fixes: Creating page not changing the slug (#7873) * fixes: Creating page not changing the slug * removes extra whitespace * [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864) * fixes: on importing a exported app child components are not present in the parent component * handles parent component mapping for tabs and calendar component * handles parent component mapping for tabs and calendar component for new versions * [appdef] api endpoint fixes (#7888) * fixes: moved fetching app version to v2 api * fixes: app slug api * Fixes CurrentUser & Mode not present in globals in inspector (#7812) * Fix current user not being present in inspector * Add Mode in globas in inspector * Fix creating page not changing the slug. * Revert "Fix creating page not changing the slug." This reverts commit 0ff9c18ab8b622a0fa96f6d7b200898c19b060f4. * Fixes on adding query params in event handler, breaking the app (#7889) * Fix on version change if left sidebar is open canvas not scrolling right * Fix on adding query params in event handler, breaking the app * Fix * Fix on version change if left sidebar is open canvas not scrolling right (#7884) * fixes: fixes on on app load switch page action via run queires (#7858) * fixes: fixes on on app load switch page action via run queires * Fix * refactor * Fix on load event not appearing on viewer --------- Co-authored-by: Nakul Nagargade <nakul@tooljet.com> * [appdef] fixes: event actions mapping for import-export (#7895) * fixes: event actions mapping for import-export * fixes: updates organisation id * fixes: templates event mapping * do not app again for not normalized apps * [appdef]migrations fix (#7910) * fixes: page attributes * fixes: table action and column events for imported apps (prev) and app migrations * adds processDataInBatches * fixes: app data migrations * create a new queryBuilder instance for each batch to ensure that there's no interference between batches * fix: app migration * cleanup * cleanup * fixes: table column data not updated on boxes changes in container (#7919) * fixes: creating all pages from all versions (#7905) * Fix state not changing in chart (#7900) * Fix in chart, toggles are not working * Update Chart.jsx --------- Co-authored-by: Arpit <arpitnath42@gmail.com> * fix event param not updating (#7902) * [appdef] Pages attributes are missing on versioning or imported app (#7904) * fixes: on creating new version pages attributes are not copied * fixes: on importing apps with pages attributes are not copied * fixes: component double duplication issues * fixes: deleting children components via selecto (#7915) * fixes: component deletion fixes * fixes: cloning components to a new version should also create associated events * fixes: creating components on cloning with general styles or properties * fixes: creatinng general properties on version * fixes: imported app * fixes added to app migrations * fixes: mobile view * fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL * fixes: table crash due to columnDeletionHistory saved as an object instead of an array * fixes: on creating new version, data_queries should be created (#7975) * [appdef] fixes: migrations (#7951) * refactor migrations with batching * event actions: switch page should be mapped to correct new page id * fixes: importing json-schema app with multiple version: same components do not get render in the canvas * fixes: import/export of legecy apps * event actions mapping to correct page ids: migrations * fixes: migrations children not rendered in subcontainer components * adapts to main/viewer changes * fixes: viewer with #6698 * fixes: viewer route * fixes: page switch via validateRoutes * fixes: on delete version fetchApp fails * handle error on saving changes * skip name opts * typo fix * Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows * fixes: slug updates from global settings * fixes: slug app link (#8008) * fixes: on version changed the preview link should also update (#8009) * fixes: on cut and paste events should not cascade (#8010) * fixes: query options to new mapped ids * [appdef] fixes: cloning apps (#8012) * fixes: cloning apps * fixes: slug status from share modal * fixes: query confirmations list on viewer (#8017) * undo-fix * fixes: updates current state with page data on creating new page * Fix failing specs (#8031) * [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026) * fixes: ignore ghost components while importing * added the fix in migrations * fixes: adding other components * fixes: table column resizes * updates layout dto * update component dto * fixes: tabs children are not rendered as the are not in their repsective parent container (#8036) * moving editorFunc to Editor.jsx * cleanup * fixes: e2e test for clone * cleanup * fixes: toggle maintaince * bumping version * multi-edit: ymap-fix-1 * Revert "multi-edit: ymap-fix-1" This reverts commit 8b799c3c51bc45179d2ad4ef405d6a234083d475. * [appdef] fixes: viewer route: keeps on reloading for private apps (#8051) * fixes: viewer route: keeps on reloading for pribate apps * should return the response * test: ymap updates-1 * fixes: v1 apps with dq queries resuts in app crash * Updated import spec * Revert "Updated import spec" This reverts commit 802136cdc3f06ee6debe3612999593a872b65bb1. * Fixed failed platform test cases for app desinition re-design (#8053) * Fix failed platform test cases * Modify user permission test cases * fixes: trial-5: fixing vanishing of components * Revert "fixes: trial-5: fixing vanishing of components" This reverts commit a22aec12c789d5bd1c9c1e9cea7d9fb1eef87bfb. * fixes: trail-6: fix * fixes: trail-7: fix * Revert "fixes: trail-7: fix" This reverts commit 08f373c415b9f1599eff9e397f7c4ffbc3f364b8. * Revert "fixes: trail-6: fix" This reverts commit c4e19b5d05c94d8c1d5a6ad37263bcec7dcdccb1. * multi-edit: ymap-fix * Revert "multi-edit: ymap-fix" This reverts commit 92f49c0cde33818c9a85478f8dfc3b59a629c3d7. * fixes: multi-user updates: adding or removing * event handlers sycned for multi-user * should take slug instead of appid if slug is present * updating adding ymap logic * versioning with multi-user * fixes: saving issue * dont skip ymap * adds delay to ymap * ymap-update-order-fixed * ymap-update-order-fixed-1.1 * ymap-update-order-fixed-1.2 * test=fix * Updated import spec (#8061) * cleanup * lint fixed * fixes: cloning apps with tabs * veiwer on event should return * fixes: event should map with show/hide modal component id * Fix failing appbuilder specs (#8117) * cherrypicked ee/00195c064 * bumping version to v2.24.0 * fixed modal actionid typo * fixes: slugs issues for released an public apps (#8119) * Fix failed test cases (#8121) * reverting global slug input * fixes: versioning with cloned page and ghost components (#8122) --------- Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com> Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com> Co-authored-by: Nakul Nagargade <nakul@tooljet.com> Co-authored-by: Midhun Kumar E <midhun752@gmail.com> Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com> Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com> Co-authored-by: Ajith KV <ajith.jaban@gmail.com> Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 05:39:47 +00:00
});
componentsMapping[componentId] = transformedComponent.id;
}
}
return transformedComponents;
}
isChildOfTabsOrCalendar = (component, allComponents = [], componentParentId = undefined) => {
if (componentParentId) {
const parentId = component?.parent?.split('-').slice(0, -1).join('-');
const parentComponent = allComponents.find((comp) => comp.id === parentId);
if (parentComponent) {
return parentComponent.component.component === 'Tabs' || parentComponent.component.component === 'Calendar';
}
}
return false;
};
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query('DELETE FROM page');
await queryRunner.query('DELETE FROM component');
await queryRunner.query('DELETE FROM layout');
await queryRunner.query('DELETE FROM event_handler');
await queryRunner.query('ALTER TABLE app_version DROP COLUMN IF EXISTS homePageId');
await queryRunner.query('ALTER TABLE app_version DROP COLUMN IF EXISTS globalSettings');
await queryRunner.query('ALTER TABLE app_version DROP COLUMN IF EXISTS showViewerNavigation');
}
}