PromucFlow_constructor/app/client/src/navigation/FocusEntity.test.ts

384 lines
9.6 KiB
TypeScript
Raw Normal View History

chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
import type { FocusEntityInfo } from "navigation/FocusEntity";
import { FocusEntity, identifyEntityFromPath } from "navigation/FocusEntity";
import { EditorState } from "@appsmith/entities/IDE/constants";
interface TestCase {
path: string;
expected: FocusEntityInfo;
}
describe("identifyEntityFromPath", () => {
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
const oldUrlCases: TestCase[] = [
{
path: "/applications/myAppId/pages/myPageId/edit",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.CANVAS,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
pageId: "myPageId",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
path: "/applications/myAppId/pages/myPageId/edit/widgets/ryvc8i7oja",
expected: {
entity: FocusEntity.PROPERTY_PANE,
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
id: "ryvc8i7oja",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
pageId: "myPageId",
widgetIds: "ryvc8i7oja",
},
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/queries",
expected: {
entity: FocusEntity.QUERY_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
entity: "queries",
pageId: "myPageId",
},
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/api/myApiId",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.QUERY,
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
id: "myApiId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
apiId: "myApiId",
applicationId: "myAppId",
pageId: "myPageId",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/queries/myQueryId",
expected: {
entity: FocusEntity.QUERY,
id: "myQueryId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
queryId: "myQueryId",
applicationId: "myAppId",
pageId: "myPageId",
},
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/jsObjects",
expected: {
entity: FocusEntity.JS_OBJECT_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
entity: "jsObjects",
pageId: "myPageId",
},
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/jsObjects/myJSId",
expected: {
entity: FocusEntity.JS_OBJECT,
id: "myJSId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
collectionId: "myJSId",
pageId: "myPageId",
},
},
},
{
path: "/applications/myAppId/pages/myPageId/edit/datasource",
expected: {
entity: FocusEntity.DATASOURCE_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
entity: "datasource",
pageId: "myPageId",
},
},
},
{
fix: Context Switching fixes for Copy and Delete (#29841) ## Description Fixes issues related to Segmented Lists around Copy / Delete interactions - It introduces a method to remove any focus history for a url. This is added whenever we delete or move an item to another page - It manages redirects after deleting a JS / Query / Datasource #### PR fixes following issue(s) Fixes #29697 Fixes #29694 Fixes #29700 Fixes #29699 #### Type of change - Bug fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? > Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration. > Delete anything that is not relevant - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Implemented new redirect logic after deleting JavaScript collections, actions, and datasources to enhance user experience. - Added custom routing for JavaScript collection creation and management. - **Enhancements** - Updated focus history handling to improve navigation and entity tracking within the app. - **Bug Fixes** - Fixed entity identification logic in test paths to ensure accurate testing scenarios. - **Refactor** - Centralized datasource grouping logic for better maintainability and performance. - Optimized widget deletion process to handle multiple widgets efficiently. - **Documentation** - No user-facing documentation updates in this release. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-27 08:47:35 +00:00
path: "/applications/myAppId/pages/myPageId/edit/datasource/myDatasourceId",
expected: {
entity: FocusEntity.DATASOURCE,
id: "myDatasourceId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationId: "myAppId",
datasourceId: "myDatasourceId",
pageId: "myPageId",
},
},
},
];
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
const pageSlugCases: TestCase[] = [
{
path: "/app/eval/page1-myPageId/edit",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.CANVAS,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
pageId: "myPageId",
pageSlug: "page1-",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
path: "/app/myAppId/page1-myPageId/edit/widgets/ryvc8i7oja",
expected: {
entity: FocusEntity.PROPERTY_PANE,
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
id: "ryvc8i7oja",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "myAppId",
pageId: "myPageId",
pageSlug: "page1-",
widgetIds: "ryvc8i7oja",
},
},
},
{
path: "/app/eval/page1-myPageId/edit/queries",
expected: {
entity: FocusEntity.QUERY_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
entity: "queries",
pageId: "myPageId",
pageSlug: "page1-",
},
},
},
{
path: "/app/eval/page1-myPageId/edit/api/myApiId",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.QUERY,
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
id: "myApiId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
apiId: "myApiId",
applicationSlug: "eval",
pageId: "myPageId",
pageSlug: "page1-",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
path: "/app/eval/page1-myPageId/edit/queries/myQueryId",
expected: {
entity: FocusEntity.QUERY,
id: "myQueryId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
pageId: "myPageId",
pageSlug: "page1-",
queryId: "myQueryId",
},
},
},
{
path: "/app/eval/page1-myPageId/edit/jsObjects",
expected: {
entity: FocusEntity.JS_OBJECT_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
entity: "jsObjects",
pageId: "myPageId",
pageSlug: "page1-",
},
},
},
{
path: "/app/eval/page1-myPageId/edit/jsObjects/myJSId",
expected: {
entity: FocusEntity.JS_OBJECT,
id: "myJSId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
collectionId: "myJSId",
pageId: "myPageId",
pageSlug: "page1-",
},
},
},
{
path: "/app/eval/page1-myPageId/edit/datasource",
expected: {
entity: FocusEntity.DATASOURCE_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
entity: "datasource",
pageId: "myPageId",
pageSlug: "page1-",
},
},
},
{
fix: Context Switching fixes for Copy and Delete (#29841) ## Description Fixes issues related to Segmented Lists around Copy / Delete interactions - It introduces a method to remove any focus history for a url. This is added whenever we delete or move an item to another page - It manages redirects after deleting a JS / Query / Datasource #### PR fixes following issue(s) Fixes #29697 Fixes #29694 Fixes #29700 Fixes #29699 #### Type of change - Bug fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? > Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration. > Delete anything that is not relevant - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Implemented new redirect logic after deleting JavaScript collections, actions, and datasources to enhance user experience. - Added custom routing for JavaScript collection creation and management. - **Enhancements** - Updated focus history handling to improve navigation and entity tracking within the app. - **Bug Fixes** - Fixed entity identification logic in test paths to ensure accurate testing scenarios. - **Refactor** - Centralized datasource grouping logic for better maintainability and performance. - Optimized widget deletion process to handle multiple widgets efficiently. - **Documentation** - No user-facing documentation updates in this release. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-27 08:47:35 +00:00
path: "/app/eval/page1-myPageId/edit/datasource/myDatasourceId",
expected: {
entity: FocusEntity.DATASOURCE,
id: "myDatasourceId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
applicationSlug: "eval",
datasourceId: "myDatasourceId",
pageId: "myPageId",
pageSlug: "page1-",
},
},
},
];
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
const customSlugCases: TestCase[] = [
{
path: "/app/myCustomSlug-myPageId/edit",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.CANVAS,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
path: "/app/myCustomSlug-myPageId/edit/widgets/ryvc8i7oja",
expected: {
entity: FocusEntity.PROPERTY_PANE,
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
id: "ryvc8i7oja",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
widgetIds: "ryvc8i7oja",
},
},
},
{
path: "/app/myCustomSlug-myPageId/edit/queries",
expected: {
entity: FocusEntity.QUERY_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
entity: "queries",
},
},
},
{
path: "/app/myCustomSlug-myPageId/edit/api/myApiId",
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
expected: {
entity: FocusEntity.QUERY,
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
id: "myApiId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
apiId: "myApiId",
},
fix: sidebar context switching (#28818) ## Description The App sidebar introduces a new Focus Entity in Context Switching. In this, whenever a user clicks the sidebar navigation item, we will ensure the last visited state is restored for that state. We do this by storing and restoring the last url on the App Sidebar state before navigating away. Internal focus entities (Datasource, Query etc) will then restore their last states in a cascading fashion. I took this opportunity to also refactor the URL storing of App Page Level focus, which also relies of storing and restoring urls. This reduces the tech debt introduced earlier and makes the functionality more configurable for future use cases. #### PR fixes following issue(s) Fixes #28873 #### Media https://github.com/appsmithorg/appsmith/assets/12022471/47c38835-37c7-4c8c-bad3-b5830702d74b #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] Jest (Updated existing tests) - [ ] Cypress (Made sure all existing tests pass) #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
2023-11-20 07:58:08 +00:00
},
},
{
path: "/app/myCustomSlug-myPageId/edit/queries/myQueryId",
expected: {
entity: FocusEntity.QUERY,
id: "myQueryId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
queryId: "myQueryId",
},
},
},
{
path: "/app/myCustomSlug-myPageId/edit/jsObjects",
expected: {
entity: FocusEntity.JS_OBJECT_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
entity: "jsObjects",
customSlug: "myCustomSlug-",
},
},
},
{
path: "/app/myCustomSlug-myPageId/edit/jsObjects/myJSId",
expected: {
entity: FocusEntity.JS_OBJECT,
id: "myJSId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.EDITOR,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
collectionId: "myJSId",
pageId: "myPageId",
customSlug: "myCustomSlug-",
},
},
},
{
path: "/app/myCustomSlug-myPageId/edit/datasource",
expected: {
entity: FocusEntity.DATASOURCE_LIST,
id: "",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
entity: "datasource",
pageId: "myPageId",
customSlug: "myCustomSlug-",
},
},
},
{
fix: Context Switching fixes for Copy and Delete (#29841) ## Description Fixes issues related to Segmented Lists around Copy / Delete interactions - It introduces a method to remove any focus history for a url. This is added whenever we delete or move an item to another page - It manages redirects after deleting a JS / Query / Datasource #### PR fixes following issue(s) Fixes #29697 Fixes #29694 Fixes #29700 Fixes #29699 #### Type of change - Bug fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? > Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration. > Delete anything that is not relevant - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress > > #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Implemented new redirect logic after deleting JavaScript collections, actions, and datasources to enhance user experience. - Added custom routing for JavaScript collection creation and management. - **Enhancements** - Updated focus history handling to improve navigation and entity tracking within the app. - **Bug Fixes** - Fixed entity identification logic in test paths to ensure accurate testing scenarios. - **Refactor** - Centralized datasource grouping logic for better maintainability and performance. - Optimized widget deletion process to handle multiple widgets efficiently. - **Documentation** - No user-facing documentation updates in this release. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-27 08:47:35 +00:00
path: "/app/myCustomSlug-myPageId/edit/datasource/myDatasourceId",
expected: {
entity: FocusEntity.DATASOURCE,
id: "myDatasourceId",
chore: Refactoring sidebar on app editor to support the same on package editor (#29212) ## Description Refactoring sidebar on app editor to support the same on package editor #### PR fixes following issue(s) Fixes [#28476](https://github.com/appsmithorg/appsmith/issues/28476) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [ ] Cypress ## Checklist: #### Dev activity - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed --------- Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2023-11-30 09:26:24 +00:00
appState: EditorState.DATA,
chore: Refactor Context Switching (#29966) ## Description Refactors the Context Switching functionality to make it usable of different IDE types. It now will set a `FocusStrategy` based on the IDE type { App, Module, Workflow } and perform the same operations. Implementation of `FocusStrategy` for other IDE types will be done on the EE side. It removes all dependence of `pageId` from the core functionality and relies on the Strategy implementation to define what states to store and set, and the key used for them. Also renamed the functionality to `FocusRetention` for more clarity. #### PR fixes following issue(s) Fixes #29961 #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] Cypress #### Test Plan > Add Testsmith test cases links that relate to this PR > > #### Issues raised during DP testing > Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR) > > > ## Checklist: #### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag #### QA activity: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added functionality for managing focus elements within the application's integrated development environment (IDE). - Introduced a focus strategy for handling focus elements in the application. - **Refactor** - Restructured code for focus management configurations and strategies to improve clarity and efficiency. - Renamed `ConfigType` enum to `FocusElementConfigType` for better reflection of its purpose. - **Bug Fixes** - Resolved issues with focus state restoration during navigation between different URLs. - **Tests** - Updated test cases to align with the new focus management logic and IDE type checks. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 05:39:47 +00:00
params: {
pageId: "myPageId",
customSlug: "myCustomSlug-",
datasourceId: "myDatasourceId",
},
},
},
];
const cases = oldUrlCases.concat(pageSlugCases.concat(customSlugCases));
it("works", () => {
for (const testCase of cases) {
feat: URL Navigation for Widgets (#20202) ## Description Widget selection is driven by URL changes. This would fix browser navigation for users as they can use browser back/forward buttons to travel across older contexts on Appsmith. > Fixing browser URL navigation for widgets Fixes #19571 Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video ## Type of change > Please delete options that are not relevant. - New feature (non-breaking change which adds functionality) ## How Has This Been Tested? - Manual - Jest - Cypress ### Test Plan > Add Testsmith [test cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that relate to this PR ### Issues raised during DP testing - [X] When a selected widget is below viewport and user refreshes the page, then the widget property pane is open but the page does not navigate to the selected widget https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec - [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click on back button of the browser > Observe the url it shows the widget id in the URL but the canvas remains empty https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5 Dev Response: This issue is valid but not a major inconvenience. We will try to track it and see if it needed to be addressed. Many other web tools do not handle such cases - [X] Canvas scrolls down when all widgets are selected. https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c - [X] Widget is not getting highlighted when added from the API editor page. Please refer to the attached video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu ## Checklist: ### Dev activity - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] New and existing unit tests pass locally with my changes - [ ] PR is being merged under a feature flag ### QA activity: - [ ] Test plan has been approved by relevant developers - [x] Test plan has been peer reviewed by QA - [ ] Cypress test cases have been added and approved by either SDET or manual QA - [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA - [ ] Added Test Plan Approved label after reveiwing all Cypress test --------- Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 13:38:16 +00:00
const actual = identifyEntityFromPath(testCase.path);
expect(actual).toStrictEqual(testCase.expected);
}
});
});