Commit Graph

503 Commits

Author SHA1 Message Date
balajisoundar
5d44d4f2cf
chore: misc updates to custom widget (#30114)
#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/29991
Fixes https://github.com/appsmithorg/appsmith/issues/30154
Fixes https://github.com/appsmithorg/appsmith/issues/30020
Fixes https://github.com/appsmithorg/appsmith/issues/30019
Fixes https://github.com/appsmithorg/appsmith/issues/30130
Fixes https://github.com/appsmithorg/appsmith/issues/30159
Fixes https://github.com/appsmithorg/appsmith/issues/30223

#### 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.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## 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**
- Custom widgets now support analytics events, enhancing visibility into
user interactions.
- Template selection, layout controls, and reference triggers in the
Custom Widget Builder are now integrated with analytics.
- Added new style options for custom widgets, including `primaryColor`,
`backgroundColor`, `borderRadius`, and `boxShadow`.

- **Bug Fixes**
  - Corrected a typo in the constant title for better clarity.
- Updated help text for the Container Widget to accurately describe the
widget's border edge.

- **Enhancements**
- Improved user interface with additional styling for reference names in
the Custom Widget Builder.
- Enhanced debugger functionality with `useCallback` optimization and
new analytics logging.

- **Refactor**
- Streamlined the property pane by introducing a new `LabelContainer`
styled component.
- Refined the handling of dynamic binding paths to ignore certain
properties efficiently.

- **Documentation**
- Added a new constant for the default model documentation URL in the
Custom Widget Builder.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-16 10:52:17 +05:30
Vemparala Surya Vamsi
8bb61d996a
chore: reverted consolidated api (#30314)
## Description
Reverted consolidated api changes and also some CE related changes to
make it compatible with EE.
#### PR fixes following issue(s)
Reverts  #29650 & #29939

#### Type of change

- Chore (housekeeping or task changes that don't impact user perception)
>
>
>
## Testing
#### How Has This Been Tested?
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [x ] 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

- **Refactor**
- Enhanced the reliability and efficiency of Cypress e2e tests by
adjusting wait conditions and assertions.
	- Simplified network request handling across various test cases.
- Updated test logic to align with changes in application data structure
and network requests.

- **Tests**
- Improved test stability for application import/export, Git sync, page
load behavior, and widget interactions.
- Refined mobile responsiveness tests to accurately validate layout
conversions and autofill behaviors.

- **Chores**
- Removed deprecated feature flags and code related to consolidated page
load functionality.
- Cleaned up unused parameters and simplified action payloads in Redux
actions.

- **Documentation**
	- Updated comments for clarity in test specifications.

- **Style**
	- Adjusted code styling for consistency across test suites.

- **Bug Fixes**
- Fixed data retrieval logic in tests to ensure correct data extraction
from API responses.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-16 10:16:48 +05:30
Vemparala Surya Vamsi
96701c343d
feat: Frontend changes for consolidated-api (#29933)
## Description
Our objective in this pr is to improve the page load time of our
application by calling a consolidated-api which contains all the
resources to load our pages. This PR contains all the client side
changes to call the consolidated-api as well as feature flag related
changes.
Fixes #29650 & #29939
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [x] 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
- [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
- [x] 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

- **Refactor**
- Updated network request aliases and response handling in end-to-end
tests.
- **New Features**
- Introduced a new API class `ConsolidatedPageLoadApi` for fetching
consolidated page load data.
- **Tests**
	- Enhanced testing for application URL navigation and data retrieval.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-15 10:00:29 +05:30
albinAppsmith
9bbf13debe
feat: enabled editor pane sidebar (#29882)
## Description

This PR fixes the cypress failures introduced after editor pane

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/29881

#### 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

---------

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2024-01-12 20:13:58 +05:30
Aishwarya-U-R
7a18d4ac4c
test: Cypress | Flaky fixes + Replacing static waits (#30067)
## Description
- This PR includes the flaky fixes of the below specs:
- jsEditor.NavigateToNewJSEditor() using TS helpers (Addressing
flakyness in specs /BugTests/JS_Bug29131_spec.ts,
BugTests/invalidLintError_Spec.ts,
ClientSide/BugTests/JS_Bug28764_Spec.ts,
/ClientSide/BugTests/Bug29566_Spec.ts,
ServerSide/JsFunctionExecution/JSFunctionExecution_spec.ts)
- /Widgets/ListV2/Listv2_onItemClick_spec.js (toast validation updated
to ts helper)
           - /Apps/MongoDBShoppingCart_spec.ts (Flaky fix 2nd case)
           - /Regression/Apps/PromisesApp_spec.js (1st test)
- /ClientSide/OtherUIFeatures/ApplicationURL_spec.js (whole spec for
static wait removal + flaky fixes)
- /ClientSide/Templates/Fork_Template_spec.js (complete spec fixes,
cypress exception fix)
           - /Sanity/Datasources/Arango_Basic_Spec.ts (3rd test)
- /ServerSide/OnLoadTests/JSOnLoad2_Spec.ts (8th case flaky fix)
- /ClientSide/MobileResponsiveTests/AutoFillWidgets_Reflow_spec.ts (2nd
testcase, flow update)
           - /ClientSide/OtherUIFeatures/Resize_spec.js (import update)
- /ClientSide/Templates/Fork_Template_spec.js (1st & 3rd for flaky fix,
removed 2nd - redundant check)
- /Git/GitSync/RepoLimitExceededErrorModal_spec.js flaky fix for EE repo
failure
- /ServerSide/ApiTests/API_Bugs_Spec.js (3rd case, removed waits, moved
to TED Api)
           - /Apps/EchoApiCMS_spec.js (removed redundant action)
- /AppNavigation/Sidebar_spec.ts, /AppNavigation/TopInline_spec.ts,
/AppNavigation/TopStacked_spec.ts - added refresh calls for CI flakyness
- homePage.RenameWorkspace() & homePage.NavigateToHome() &
homePage.Signout() - removed static wait, added dynamic check
- homePage.CreateNewApplication() - removed static wait
- homePage.CreateAppInWorkspace() - removed commented code
- homePage.CreateNewWorkspace() - logic improved
- agHelper.AssertURL() - added timeout, removed static wait, calling
assertHelper.AssertDocumentReady()
- Few of agHelper methods timeout & error mesg text update
- cy.Signup() - updated validations
- agHelper.CheckForErrorToast() to agHelper.FailIfErrorToast() - method
name
- /ClientSide/BugTests/DSDiscardBugs_spec.ts - removed unnecessary
method call

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after all changes were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
- Enhanced timeout handling across various helper methods for improved
stability.
- Streamlined interactions with UI elements using updated helper
methods.
- Adjusted test suites to utilize configuration values for consistency.

- **Tests**
  - Temporarily disabled specific test suites to address current issues.
- Updated test assertions and interaction patterns for clarity and
reliability.
- Added new test cases and assertions to cover additional
functionalities.

- **Chores**
  - Updated workflow variables for more efficient CI processes.
- Curated the list of limited tests to focus on critical test scenarios.

- **Documentation**
  - Clarified test descriptions and intentions for better understanding.

- **Bug Fixes**
- Fixed UI element interactions to prevent test flakiness and improve
user experience.
- Implemented page refresh before application imports to ensure clean
state for tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-12 12:00:12 +05:30
Hetu Nandu
a15741f14f
fix: Widget selection context switch adjustments (#30117) 2024-01-12 10:53:47 +05:30
Aishwarya-U-R
01b31b3ae3
test: Cypress | Replace static waits from Helpers + Flaky fixes (#29856)
## Description
- This PR removes static waits from below helpers & added dynamic checks
as needed:
         - apiPage.CreateApi(), apiPage.CreateAndFillGraphqlApi()
         - app/client/cypress/support/Pages/AppSettings/ThemeSettings.ts
- cy.CreateNewAppInNewWorkspace() - replaced static wait with dynamic
check
- dataSources.NavigateToDSCreateNew() - removed wait, updated logic
         - agHelper.VerifyEvaluatedValue()
- Flaky fix below specs:
- /Git/GitSync/GitSyncedApps_spec.js (fixed testcase # 2 - 4th onwards
is failing due to childbranch/master change - to be checked further)
- /Git/GitDiscardChange/DiscardChanges_spec.js
(EditorNavigation.NavigateToDatasource(), Sidebar.navigate())
         - /BugTests/ApiBugs_Spec.ts (3rd case)
         - /Dropdown/Dropdown_onOptionChange_spec.js (3rd case)
         - /ServerSide/ApiTests/API_Search_spec.js (3rd case)
- Removed extra Refresh call from before hook in
/BugTests/ApiBugs_Spec.ts
         

#### Type of change
- Script update (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **Bug Fixes**
	- Improved the reliability of API creation processes.
- Enhanced the user experience in theme settings by removing unnecessary
delays.
	- Streamlined navigation in the data source creation workflow.

- **Refactor**
- Optimized test automation scripts for better performance and
maintainability.
	- Updated element interaction methods to increase test robustness.
- Refined logic for selecting and asserting UI components within test
cases.

- **Chores**
- Adjusted test suite configurations to include new test cases and
exclude a specific test file.
	- Removed redundant page refresh steps to improve test execution speed.

- **Tests**
- Added new assertions to validate the evaluated values in test
scenarios.
- Simplified data source and query creation in widget test cases for
clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-05 11:42:03 +05:30
Ankita Kinger
9bc4c9711c
chore: Refactoring multiple environments to use editorId instead of appId (#29965)
Reverts appsmithorg/appsmith#29942

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
- Streamlined the process for setting workspace and editor IDs across
various components and actions.
- Enhanced the route matching mechanism for improved navigation within
the app.

- **Bug Fixes**
- Corrected typos and variable naming inconsistencies to ensure clarity
and consistency in the codebase.

- **Style**
- Adjusted UI components for better accessibility, including the correct
use of Aria attributes.

- **Chores**
- Removed unused imports and code to clean up the codebase and improve
maintainability.

- **Documentation**
- Updated internal documentation to reflect changes in function
signatures and payload structures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-03 20:39:34 +05:30
Favour Ohanekwu
fded594e36
fix: improve validation error message for Table widget (#29686)
## Description
This PR changes the validation error message for Table widgets

#### PR fixes following issue(s)
Fixes #28729
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### 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
- Bug fix (non-breaking change which fixes an issue)
>
>
## Testing
>
#### How Has This Been Tested?
- [ ] Manual
>
#### 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

- **Refactor**
- Improved the error message for table data validation to provide more
specific guidance to users about the expected input format.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: arunvjn <arunvjn10@gmail.com>
2024-01-03 19:26:33 +05:30
Abhinav Jha
a4972258ed
fix: Fixed Layout system: Main container background underflow (#29796)
## Description
- In the fixed layout system, the background of the canvas fell short of
the bottom most widget.
- This was due to an unnecessary `height: 100%` applied to the Fixed
layout system.
- Changed the code so that the `height: 100%` is only applied in the
Anvil layout system
#### PR fixes following issue(s)
Fixes #29797 
Fixes #29883

#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [x] Cypress

#### Test Plan

#### Issues raised during DP testing

## 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

- **Style**
- Enhanced the Canvas layout to adjust its height dynamically according
to the layout system in use.
- **Tests**
- Introduced tests to validate the main container's overflow behavior in
mobile responsive scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-03 01:17:56 +05:30
Aman Agarwal
fdf25bea50
fix: table version changed for crud (#29457) 2023-12-29 17:49:20 +05:30
Preet Sidhu
dbda916f09
fix: undo action and highlight positions on right and bottom edges (#29909)
## Description

1. Make store updates atomic to ensure that undo operation works as
expected.
2. Add another guard to ensure that entire highlight is always visible,
esp along bottom and right edges of a layout.

#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing

#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] 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


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
  - Improved the layout saving process within the Anvil layout system.
- Enhanced the calculation of highlight positions in the layout editor.

- **Chores**
  - Removed unused `SAVE_ANVIL_LAYOUT` action type and related sagas.

- **Bug Fixes**
- Fixed positioning calculations for layout highlights to ensure
accurate alignment and distribution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-29 08:11:49 +05:30
balajisoundar
837d0cc76a
chore: custom widget (#28926)
## Description
This PR's adds the custom widget.

#### PR fixes following issue(s)
Fixes #28607
Fixes #28610
Fixes #28615
Fixes #28608
Fixes #28612
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### 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
- New feature (non-breaking change which adds functionality)
>
>
>
## 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
- [x] Jest
- [x] 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
- [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
- [x] 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
- [x] 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**
- Introduced search functionality with a wildcard option for unmatched
widget searches.
  - Added new routes for custom widget editing.
  - Implemented additional editor modes for HTML and CSS.
- Created new code templates and help components for custom widget
builders.
- Enhanced property controls with new button controls for custom widget
editing.
  - Updated theming interfaces and constants for better theming support.
- Added the CustomWidget component for embedding custom widgets in
iframes.
  - Expanded widgets library to include the CustomWidget.

- **Enhancements**
- Improved `CodeEditor` with additional modes, props, and resize
behavior.
- Enhanced `PropertyPaneControlConfig` interface with dynamic
dependencies and additional properties.
- Refined custom widget scripts with communication channel and event
handling.

- **Bug Fixes**
  - Fixed visibility logic for the `ExternalWidget` card.
  
- **Documentation**
- Added new messages and documentation links for custom widget features.

- **Tests**
- Implemented new Cypress tests for custom widget default components and
property pane interactions.
  - Updated workspace commands in Cypress tests.

- **Refactor**
- Streamlined `PropertyControl` state management and editing functions.
  - Refactored code editor hint helper logic.
  
- **Style**
  - Added `borderLess` prop to style components without borders.

- **Chores**
  - Updated constants and messages related to custom widget features.
  - Adjusted webpack configuration to ignore specific module warnings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-28 12:16:28 +05:30
sharanya-appsmith
0ce1780595
test: Cypress - added @tag.excludeForAirgap, @tag.Templates tags (#29790)
## Description
> Added excludeForAirgap tgs 

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> running tbp
> /ok-to-test tags="@tag.excludeForAirgap" 

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress
>
>

## 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

- **Test Enhancements**
- Improved test descriptions and added relevant tags for better
categorization and filtering across various test suites.
- Consolidated test logic and descriptions for clarity and coherence in
test suites.

- **Bug Fixes**
- Updated test cases to reflect accurate scenarios for bugs and feature
testing.
- Adjusted test sequences and assertions for enhanced reliability and
coverage.

- **Refactor**
- Restructured test suites for a more logical flow and clearer
objectives.
- Enhanced test setup steps and assertions for comprehensive validation.

- **Chores**
- Implemented a new tagging functionality for organizing test suites and
cases.
  - Added new tags to the tagging system for improved test management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-27 16:50:36 +05:30
Hetu Nandu
fc34360b2a
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 14:17:35 +05:30
Rahul Barwal
2fef626dcc
feat: adds see more to canvas starter templates (#29777)
## Description
* This PR increases discovery of building blocks, allowing more building
blocks to be shown in canvas.
* We also refactored the way `add a page from template` functions: now
we have updated store structure to reflect from where the modal open was
triggered.
* This pull request refactors the template styling and adds support for
an optional modal layout. It also includes various updates and fixes to
the styled components used in the templates feature.

#### PR fixes following issue(s)
Fixes #29723
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### 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

- New feature (non-breaking change which adds functionality)
## 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
- [x] 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 a modal for template selection with the ability to hide
it.
	- Added a "See More" text option for template page layouts.
	- Introduced layout switching capability within the templates modal.

- **Enhancements**
	- Updated template list and content components to support modal layout.
	- Added initial filter state management for template filtering.

- **Refactor**
	- Renamed selectors and actions for clarity and consistency.
- Improved logic for determining template forking and filter component
behavior.

- **Bug Fixes**
	- Adjusted styles to correctly apply margins in various layouts.

- **Documentation**
	- Updated messages and constants with more accurate terminology.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-27 10:29:33 +05:30
Preet Sidhu
fa7bd6a543
feat: add layouts and widgets for sections and zones. (#29713)
## Description

1. Create Section Widget.
2. Create Zone Widget.
3. Create layouts and presets for Sections and zones.
4. Upate layout for Anvil Main Canvas.
5. Refactor BaseLayoutComponent. Separate renderer for edit and view
modes.
6. Add childrenMap context to avoid prop drilling through all layouts.
7. Add Anvil Config for WDS widgets.

#### Type of change
- New feature (non-breaking change which adds functionality)

## Testing
#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress

#### Test Plan

## 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


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new `Zone Stepper Control` component for UI interaction.
- Added `AnvilCanvas` and `AnvilMainCanvas` components with improved
performance and interaction features.
- Implemented `LayoutProvider` and `useClickToClearSelections` for
better layout management.
- Launched `AnvilCanvasDraggingArena` and `AnvilHighlightingCanvas`
components with enhanced drag-and-drop capabilities.
- New `useZoneMinWidth` hook to calculate minimum zone width based on
child widgets.
- Added `SectionRow`, `Section`, `ZoneColumn`, and `Zone` components for
advanced layout structuring.
  - New `WidgetRenderer` component for dynamic child widget rendering.

- **Enhancements**
- Improved canvas activation and deactivation logic with
`useCanvasActivation` and `useCanvasActivationStates`.
- Enhanced drag-and-drop experience with updated `useCanvasDragging`
logic.
- Streamlined `AnvilMainCanvas` integration with conditional rendering
based on `renderMode`.
- Optimized `FlexLayout` component to handle new `isContainer` and
`layoutType` properties.

- **Bug Fixes**
- Fixed issues with widget positioning and event handling in
`WidgetNamesCanvas` components.
- Corrected `PageView` width property type for consistent page
rendering.

- **Refactor**
- Consolidated Anvil layout update management with `anvilSagas` and
`anvilChecksSagas`.
- Refined `SectionWidget` and `ZoneWidget` configuration for improved
stability and performance.
- Streamlined `LayoutElementPositionsObserver` with `layoutType`
enhancements.

- **Documentation**
- Updated comments and added clarifications for better developer
understanding of canvas-related hooks and components.

- **Style**
- Modified `.anvil-canvas` class styles for full-width and height
presentation.

- **Chores**
- Cleaned up import statements and removed unused code across various
components and utilities.

- **Tests**
- Enhanced Cypress tests with additional selectors and interaction
commands for `AutoDimension` feature verification.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2023-12-26 09:16:58 -05:00
Aishwarya-U-R
39ebef39a5
test: Cypress | Replace static with Dynamic checks (#29664)
## Description
- This PR removed static wait from spec - API_with_List_Widget_spec
- Git/GitSync/GitSyncedApps_spec.js (fixes for EE flakyness - WIP -
still failing in chrome, pass in electron)
- Remove wait from OpenPaneAndChangeThemeColors() & added n/w check
- Upgrading Cypress from 13.3 to 13.6
- Flaky fix:
      - ClientSide/Widgets/Text/Text2_Spec.ts
      - ClientSide/Widgets/Select/Select2_Spec.ts
      - cypress/e2e/Regression/ClientSide/JSLibrary/Library_spec.ts
      - /ClientSide/Git/GitWithJSLibrary/GitwithCustomJSLibrary_spec.js

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing

#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **New Features**
- Enhanced Git synchronization capabilities with improved user interface
interactions.
  - Streamlined navigation back to the editor from deployment mode.
- Implemented more robust table loading checks to ensure data is
properly displayed.

- **Bug Fixes**
- Fixed issues with element presence assertions to improve test
reliability.
- Addressed the visibility of certain UI elements to ensure they appear
as expected.

- **Tests**
- Updated end-to-end test scripts to reflect new interactions and
assertions.
- Added a new test file `GitSyncedApps_spec.js` to cover Git-synced
applications.
  - Removed outdated test file `Fork_Template_spec.js`.

- **Refactor**
- Improved method calls for querying and interacting with elements to
enhance test stability.
- Optimized wait conditions for element visibility to reduce flakiness
in tests.

- **Chores**
- Adjusted the GitHub Actions workflow for client-server build to refine
output for matrix counts.
- Updated CI test workflow to incorporate Electron setup and remove
Chrome setup steps.

- **Documentation**
- Included comments to explain the rationale behind certain timeout
values and method changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-22 17:20:05 +05:30
Jacques Ikot
c8217e63a5
feat: improve templates listing page in start with templates flow (#29524)
## Description
Enhancements to Templates Gallery:

1. Fixed Template Heights:
Adjusted the template card display to feature a fixed height for each
template, providing a consistent and visually appealing layout.

2. Title Update to "Operations":
Revised the section title from "Templates" to "Operations" to better
reflect the purpose and content of the gallery.

3. New Card for Building Blocks:
Created a new card to accommodate building blocks seamlessly. This
enhancement ensures a more comprehensive representation of the available
elements within each template.

4. Transition to Grid Layout:
Replaced the Masonry layout with a grid structure for improved alignment
and visual harmony between templates and building blocks. This change
enhances the overall organization and presentation of content within the
gallery.

Figma -
https://www.figma.com/file/kbU9xPv44neCfv1FFo9Ndu/User-Activation?type=design&node-id=4293-41441&mode=design&t=nPvqyNdtbtsKmvm2-0

#### PR fixes following issue(s)
Fixes #29456 

#### Media

#### Type of change
- New feature (non-breaking change which adds functionality)

## 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**
- Introduced styled components for improved layout and design of
building block templates.
- Added a new "Fork" button with tooltip functionality to Building Block
components.
- Implemented a grid layout for template presentation using the new
`TemplateGrid` styled component.
- Created a `FixedHeightTemplate` component to enforce consistent sizing
and text truncation for template elements.

- **Enhancements**
- Updated the `BuildingBlock` component to support a new
`onForkTemplateClick` event.
- Refined the visual presentation and layout of templates with updated
CSS styles.
- Improved the template filtering interface with new selectors and
loading indicators.
- Enhanced the `TemplatesContent` component to include search
functionality and display the count of templates and filters.

- **Bug Fixes**
- Fixed issues with template rendering by replacing the use of `Masonry`
with `TemplateGrid`.
- Adjusted the `RequestTemplate` component to correctly display the
request text based on the `isBuildingBlock` prop.

- **Refactor**
- Refactored the `TemplatesContent` component into
`StartWithTemplateContent` and `StartWithTemplateFilters` for better
modularity.
- Removed redundant code and imports across various template-related
components and files.
- Streamlined test scripts by introducing custom helper functions for
template interactions.

- **Documentation**
- Added a new message constant `REQUEST_BUILDING_BLOCK` for requesting
building blocks.

- **Style**
- Applied updated styles to the `SearchWrapper` and
`ModalContentWrapper` components for better visual consistency.

- **Chores**
- Updated the `TEMPLATE_BUILDING_BLOCKS_FILTER_FUNCTION_VALUE` constant
to reflect the correct terminology.

- **Tests**
- Modified test cases related to filtering templates and forking
templates to reflect changes in the UI and functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
2023-12-22 13:41:35 +05:30
Aishwarya-U-R
c03e04aedb
test: Cypress | Flaky fix SetOptions_Spec.ts for EE failure (#29767)
## Description
- This PR fixes SetOptions_Spec.ts which is flaky in EE

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Tests**
- Improved wait conditions and element retrieval methods for enhanced
end-to-end test reliability.
  - Updated assertions to improve test accuracy and stability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-21 14:32:38 +05:30
Hetu Nandu
8e88676243
fix: Widget Context Switching (#29735)
## Description
Fixes context switching issues related to Widget List ensuring it also
works for current prod


#### PR fixes following issue(s)
Fixes #29695


#### 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
- 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**
  - Added a search functionality to the app.
- Integrated a search bar at the top of the `Hero` component and a
`Search` component to the `App` component.
  - Included styles for the search bar in the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-20 12:26:16 +05:30
Pawan Kumar
1f38d7333a
chore: add action group component (#29645)
Fixes #29425 

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
  - Introduced an icon alongside menu items, with positioning options.
- Implemented a new `ActionGroup` component to manage a group of actions
with overflow behavior and keyboard navigation.
- Added new `ActionGroupItem` and `MoreIcon` components for action
groups.

- **Enhancements**
- Improved resize handling in the `ThemeProvider` for conditional
rendering based on measurements.
- Updated button styles to adjust minimum inline sizing for better
layout.

- **Documentation**
- Created Storybook stories to showcase `ActionGroup` configurations and
usage.

- **Style**
- Modified list item styling in the `Menu` component to incorporate
icons.

- **Tests**
  - Added mock for `useDebounce` hook in `AppsmithIDE` tests.
- Updated Cypress test assertions to accommodate changes in layout
behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Valera Melnikov <valera@appsmith.com>
2023-12-19 16:04:27 +03:00
sharanya-appsmith
97d5e60842
test: Cypress - tags added - @tag.Workspace, @tag.Datasource, @tag.JS, @tag.PropertyPane (#29704)
## Description
> Added tags to cases 
    -   cypress/e2e/Regression/ClientSide/Workspace - @tag.Workspace
    -  cypress/e2e/Regression/ServerSide/ApiTests - @tag.Datasource
    -  cypress/e2e/Regression/ServerSide/Datasources - @tag.Datasource
    -  cypress/e2e/Regression/ServerSide/GenerateCRUD - @tag.Datasource
    - cypress/e2e/Regression/ServerSide/JsFunctionExecution - @tag.JS
    - cypress/e2e/Regression/ServerSide/OnLoadTests - @tag.PropertyPane
    - cypress/e2e/Sanity/Datasources - @tag.Datasource
    - cypress/e2e/Regression/ServerSide/QueryPane -  @tag.Datasource

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
## Testing
> /ok-to-test tags="@tag.Workspace,  @tag.PropertyPane,  @tag.JS"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced test suites for Radio, Rating, and Select widgets with
metadata tags for improved categorization and filtering.
- Updated test descriptions and restructured test cases for better
clarity and organization.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:41:37 +05:30
sharanya-appsmith
58a8d4334e
test: Cypress - added tags - @tag.Radio, @tag.Rating, @tag.TextEditor, @tag.PhoneInput, @tag.IconButton, @tag.Maps, @tag.MenuButton, @tag.Progress, @tag.Statbox (#29693)
## Description
> Added tags to cases 
- cypress/e2e/Regression/ClientSide/Widgets/Modal - @tag.Modal,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Multiselect -
@tag.Multiselect, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/PhoneInput -
@tag.PhoneInput, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/RTE - @tag.TextEditor,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Radio - @tag.Radio,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Select - @tag.Select,
@tag.Widget
-
cypress/e2e/Regression/ClientSide/Widgets/Others/StatBox_DragAndDrop_spec.js
- @tag.Statbox, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Rating - @tag.Rating,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Others/Progress_spec.js -
@tag.Progress, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Others/MapChart_Spec.ts -
@tag.Maps, @tag.Widget

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
## Testing
> /ok-to-test tags="@tag.Radio, @tag.TextEditor, @tag.PhoneInput,
@tag.Maps"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced test suites for Radio, Rating, and Select widgets with
metadata tags for improved categorization and filtering.
- Updated test descriptions and restructured test cases for better
clarity and organization.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:25:28 +05:30
sharanya-appsmith
31a091efdb
test: Cypress - added tags - @tag.Filepicker, @tag.Form, @tag.Iframe, @tag.Image, @tag.Input (#29689)
## Description
> Added tags to 
- cypress/e2e/Regression/ClientSide/Widgets/Filepicker - @tag.Filepicker
    - cypress/e2e/Regression/ClientSide/Widgets/Form - @tag.Form
    - cypress/e2e/Regression/ClientSide/Widgets/Iframe - @tag.Iframe
    - cypress/e2e/Regression/ClientSide/Widgets/Image - @tag.Image
    - cypress/e2e/Regression/ClientSide/Widgets/Input - @tag.Input


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.Widget" 
> /ok-to-test tags="@tag.Filepicker ,@tag.Image" 

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress

## 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

- **Refactor**
- Enhanced test suites with tags for better categorization and
searchability.
	- Improved test descriptions and reordered test steps for clarity.
	- Updated test suites to use arrow functions for consistency.

- **Tests**
- Expanded test coverage for file picker widgets, including additional
file formats.
	- Added new test cases for form widget functionalities and validations.
	- Refined iframe widget tests to verify different aspects separately.
- Adjusted image widget tests and input widget tests for improved
validation and functionality checks.

- **Chores**
- Updated tags.js file to reflect the latest tagging conventions for
tests.

- **Style**
- Standardized formatting across various test suites to maintain code
cleanliness and readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:24:59 +05:30
sharanya-appsmith
59f4d9d422
test: Cypress - added tags - @tag.JS, @tag.Perf, @tag.Settings, @tag.PropertyPane, @tag.Theme (#29682)
## Description
> Added tags to cases in 
- cypress/e2e/Regression/ClientSide/PropertyPane
- cypress/e2e/Regression/ClientSide/ThemingTests
- cypress/e2e/Regression/ClientSide/Refactoring
- cypress/e2e/Regression/ClientSide/ProductRamps
- cypress/e2e/Regression/ClientSide/Performance
- cypress/e2e/Regression/ClientSide/PeekOverlay


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.JS, @tag.Perf, @tag.Settings,
@tag.PropertyPane, @tag.Theme"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced test categorization with the addition of tags for better
filtering and identification across various test suites.
- Improved readability and maintenance of test cases through
reformatting and restructuring.
- Updated test suite options for improved test coverage and
identification.

- **Refactor**
- Optimized test setup and execution logic for several feature-related
test suites.

- **Bug Fixes**
- Adjusted test cases to accurately reflect application behavior,
particularly in toast message validation and property setting scenarios.

- **Documentation**
- Added comments for clarity in test code to aid in understanding test
case intent and functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:18:23 +05:30
sharanya-appsmith
78514dcbac
test: Cypress - tag - @tag.MobileResponsive (#29678)
## Description
> Added tags to cases in 
- cypress/e2e/Regression/ClientSide/MobileResponsiveTests/

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.MobileResponsive"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced mobile responsiveness test suites with additional tags and
assertions to ensure consistent behavior across various devices.
- Improved test structure for clarity and better simulation of user
interactions on mobile viewports.
- Increased coverage for widget dimension validations after viewport
changes.

- **Refactor**
- Reorganized test cases and logic for a more streamlined testing
process.

- **Documentation**
- Updated test descriptions and added comments for better understanding
of test purpose and functionality.

- **Chores**
- Adjusted test suite setups and teardowns for optimized test execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:15:29 +05:30
sharanya-appsmith
0b4fe0dd10
test: Cypress - added tags - @tag.JSONForm, @tag.List, @tag.Widget (#29690)
## Description
> Added tags to cases 
- cypress/e2e/Regression/ClientSide/Widgets/JSONForm - @tag.JSONForm,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/List - @tag.List,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/ListV2 - @tag.List,
@tag.Widget

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
## Testing
> /ok-to-test tags="@tag.JSONForm,  @tag.List"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Refactor**
- Enhanced testing suites for the JSON Form and List widgets with
improved categorization and readability.
- Improved test cases for field visibility, disabling, default values,
and widget functionality across various components.

- **Tests**
- Added new test cases to cover additional scenarios for JSON Form
fields and List widget interactions.
	- Refined existing tests to increase reliability and coverage.

- **Documentation**
- Updated test suite descriptions with tags for better organization and
clarity.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:06:45 +05:30
sharanya-appsmith
bae69cddb4
test: Cypress - @tag.Video, @tag.Container, @tag.Switch, @tag.Slider, @tag.Tab, @tag.Table, @tag.Select (#29698)
## Description
> Added tags to cases 
- cypress/e2e/Regression/ClientSide/Widgets/ContainerTest2_spec.ts -
@tag.Container, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Switch - @tag.Switch
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Sliders - @tag.Slider,
@tag.Widget
-  cypress/e2e/Regression/ClientSide/Widgets/Tab - @tag.Tab, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/TableV1 - @tag.Table,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/TableV2, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Video, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/TreeSelect - @tag.Select,
@tag.Widget

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
## Testing
> /ok-to-test tags="@tag.Container, @tag.Video, @tag.Table, @tag.Switch"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced test suites for Radio, Rating, and Select widgets with
metadata tags for improved categorization and filtering.
- Updated test descriptions and restructured test cases for better
clarity and organization.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:05:27 +05:30
sharanya-appsmith
f5fdec13f6
test: Cypress - added tags - @tag.Audio, @tag.Button, @tag.Camera, @tag.Chart and @tag.Widget (#29685)
## Description
> Added tags 
- cypress/e2e/Regression/ClientSide/Widgets/Audio - @tag.Audio,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Button - @tag.Button,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Camera - @tag.Camera,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Chart - @tag.Chart,
@tag.Widget

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.Widget"
> /ok-to-test tags="@tag.Camera"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced test suites for Audio Recorder, Button, Camera, and Chart
widgets with additional assertions and validations.
- Added new test cases for various widget properties and events,
including style properties, form settings, and camera modes.
- Reorganized and reformatted existing test suites for improved
readability and maintainability.

- **Documentation**
- Updated test descriptions to include tags for better categorization
and traceability.

- **Bug Fixes**
- Modified test logic to ensure thorough verification of widget
functionalities and event triggers.

- **Refactor**
  - Reorganized test cases into individual `it` blocks for clarity.
  - Adjusted test control flows for more precise behavior validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:04:15 +05:30
sharanya-appsmith
d8a818686e
test: Cypress - added tags - @tag.Settings, @tag.Binding (#29684)
## Description
> Added tags 
-  cypress/e2e/Regression/ClientSide/UserProfile/ - @tag.Settings
-  cypress/e2e/Regression/ClientSide/VisualTests/ - @tag.Settings
-  cypress/e2e/Regression/ClientSide/Walkthrough/ - @tag.Binding

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)


## Testing
>/ok-to-test tags="@tag.Settings, @tag.Binding"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress

## 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

- **Tests**
- Enhanced the "Update User Picture" end-to-end test to include checks
for "Remove" text and file upload functionality.
- Introduced a new test case to handle and validate error messages for
invalid file uploads.
- Updated the "Update User's Name" test suite with a settings tag for
better categorization.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:03:54 +05:30
sharanya-appsmith
2802efcbb2
test: Cypress - added tags - @tag.IDE, @tag.JS (#29674)
## Description
> Added tags to cases in 
-  cypress/e2e/Regression/ClientSide/IDE
- cypress/e2e/Regression/ClientSide/JSObject


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.IDE" 

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

## Summary by CodeRabbit

- **Tests**
- Enhanced test suite descriptions and added categorization tags for
better filtering.
- Improved test code structure and added explanatory comments for
increased clarity and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 17:01:22 +05:30
sharanya-appsmith
3d1828de2a
test: Cypress - added @tag.Checkbox, @tag.Scanner, @tag.Datepicker, @tag.DocumentViewer, @tag.CurrencyInput, @tag.Dropdown (#29687)
## Description
> Added tags to 
- cypress/e2e/Regression/ClientSide/Widgets/Checkbox - @tag.Checkbox,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/CodeScanne - @tag.Scanner,
@tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/CurrencyInput -
@tag.CurrencyInput, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Datepicker -
@tag.Datepicker, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/DocumentViewer -
@tag.DocumentViewer, @tag.Widget
- cypress/e2e/Regression/ClientSide/Widgets/Dropdown - @tag.Dropdown,
@tag.Widget


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.Widget" 
> /ok-to-test tags="@tag.Scanner,@tag.Checkbox" 

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress

## 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-12-18 16:59:48 +05:30
Valera Melnikov
f793fb58f0
fix: put wds theme provider under feature flag (#29659)
## Description
Put WDS theme provider under the feature flag so that WDS don't affect
prod anymore.

Also fix this 
![CleanShot 2023-12-15 at 13 50
29@2x](https://github.com/appsmithorg/appsmith/assets/11555074/c1421c67-9605-4912-b8d4-c9203758ac6a)

**How it look like now**

WDS enabled
![Снимок экрана 2023-12-15 в 14 34
54](https://github.com/appsmithorg/appsmith/assets/11555074/3e3d4c05-cc3f-4222-95eb-b90a50e0117f)
![Снимок экрана 2023-12-15 в 14 34
59](https://github.com/appsmithorg/appsmith/assets/11555074/718ab285-8700-41d0-b9bc-e60546592b76)


WDS disabled
![Снимок экрана 2023-12-15 в 14 35
59](https://github.com/appsmithorg/appsmith/assets/11555074/7b7de78f-0b71-4197-bd2e-c42f60fd2b63)
![Снимок экрана 2023-12-15 в 14 36
03](https://github.com/appsmithorg/appsmith/assets/11555074/5c5fe2fa-7547-4f6a-a8f2-bdf193f3b6e5)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
  - Improved feature flag naming for clarity in the app viewer settings.
  - Simplified theme background color application in the editor canvas.
- Centralized rendering logic for editor canvas components for better
maintainability.

- **Style**
- Streamlined the application of themes to ensure consistent background
colors across the platform.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 14:16:00 +03:00
sharanya-appsmith
a411e27b46
test: Cypress - added tag- @tag.Binding (#29679)
## Description
> Added tags to cases in 
- cypress/e2e/Regression/ClientSide/OneClickBinding

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.Binding"

#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress


## 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

- **Tests**
- Enhanced end-to-end test coverage with new test cases and tags for
better organization.
- Improved existing test cases for the JSONForm and Table widgets,
including additional assertions and interactions.
- Synchronized test execution with application behavior through added
waits.
- Expanded test scenarios for one-click binding features across various
widgets and data sources.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 13:07:03 +05:30
sharanya-appsmith
9aa94a2746
test: Cypress - added tag - @tag.AutoHeight, @tag.IDE (#29670)
## Description
> Add tags to cases in 
- cypress/e2e/Regression/ClientSide/DynamicHeight 
- cypress/e2e/Regression/ClientSide/ExplorerTests
- cypress/e2e/Regression/ClientSide/EmbedSettings
- cypress/e2e/Regression/ClientSide/Editor

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> /ok-to-test tags="@tag.AutoHeight"

#### 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.
- [ ] Manual
- [ ] Cypress

## 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

- **Refactor**
- Reorganized test suite structures and added categorization tags to
improve test clarity and maintainability.

- **Style**
- Reformatted code across multiple test files for better readability and
consistency.

- **Tests**
- Enhanced existing test cases with additional assertions for element
visibility and CSS attribute values.
- Adjusted test control flows and logic for dynamic height and width
validation across various widgets.
- Updated test descriptions and restructured test steps to align with
testing best practices.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 12:45:44 +05:30
sharanya-appsmith
87a928a168
test: Cypess - added tags - @tag.Fork, @tag.Git (#29672)
## Description
> Added tags to cases in 
- cypress/e2e/Regression/ClientSide/Fork
- client/cypress/e2e/Regression/ClientSide/Git


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>/ok-to-test tags="@tag.Fork"

#### How Has This Been Tested?
- [x] Manual
- [x] Cypress
>
>

## 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

- **Refactor**
- Improved the structure and readability of test suites related to
forking applications.

- **Tests**
- Enhanced test descriptions and categorization with new tags for better
test management.
- Added new test scenarios for forking applications by non-signed users
and checking application properties post-fork.

- **Chores**
- Introduced new tags for test suites to facilitate automated test
height adjustment and forking feature identification.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-18 11:56:21 +05:30
sharanya-appsmith
d0de9c2fbe
test: Cypress - added tags - @tag.Git, @tag.JS, @tag.Binding, @tag.Datasource, @tag.ImportExport (#29516)
Renamed testcases starting with Bug to appropriate Feature_Bug eg
DS_Bug, JS_Bug etc. and tagged them.

Reverted the airgap change made to 
1.
cypress/e2e/Regression/ClientSide/AdminSettings/Admin_settings_spec.js
2. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

Run Binding test cases -` /ok-to-test tags="@tag. Binding"`
Run JS test cases -   `/ok-to-test tags="@tag.JS"`
Run ImportExport test cases -  ` /ok-to-test tags="@tag.ImportExport"`
Run Binding test cases -   `/ok-to-test tags="@tag.Binding"`
Few more datasource testcases added - `/ok-to-test
tags="@tag.Datasource"`
To run both Git and Datasource tagged testcases -` /ok-to-test
tags="@tag.Datasource,@tag.Git"`


>
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
> Ran ok to test with multiple tags
#### 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
- [x] Manual
- [x] Cypress
>
>

## 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

- **Tests**
- Enhanced test suite descriptions with relevant tags for better
categorization and filtering.
- Added new test cases for various bug verifications, ensuring features
like datasource interactions, API executions, and widget bindings work
as expected.
- Improved existing test cases with additional steps and assertions to
cover more scenarios and edge cases.

- **Bug Fixes**
- Implemented test cases to verify fixes for specific bugs related to
data source configurations, JavaScript object parsing, and UI component
behaviors.

- **Documentation**
- Updated test descriptions to provide clearer context and objectives
for each test suite.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-15 18:28:26 +05:30
Aishwarya-U-R
b7b2e49966
test: Cypress | Replace static with Dynamic waits - Part IV (#29641)
## Description
- This PR removes static wait from below
'app/client/cypress/e2e/Regression/ClientSide/**' & replaces with
dynamic checks as needed:
         - /AuditLogs/Audit_logs_spec.js
         - /Autocomplete/Autocomplete_setters_spec.ts
         - /Autocomplete/BracketNotation_AC_spec.ts
         - /Autocomplete/Bugs_AC_Spec.ts
         - /Autocomplete/JS_AC1_spec.ts
         - /Autocomplete/JS_AC2_spec.ts
         - /Autocomplete/PropertyPaneSuggestion_spec.ts
         - /Autocomplete/autocomplete_spec.ts
         - /Branding/Branding_spec.js
         - /Debugger/Widget_property_navigation_spec.ts
- Flaky fix to move to TED(from Users) & remove wait in
Widgets/Chart/Chart_Widget_Loading_spec.js
- Dynamic wait add - ClientSide/SetProperty/SetOptions_Spec.ts

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
>
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Tests**
- Optimized test flows by removing unnecessary wait times, improving
test reliability and execution speed.
- Skipped certain test suites and cases, likely due to ongoing
development or identified issues requiring attention.
- Updated test cases to reflect new functionalities and ensure proper
synchronization during test execution.

- **Chores**
- Adjusted the list of limited tests, refining the focus of the test
suite for more targeted testing.

- **Documentation**
- Updated test descriptions and comments to better reflect their purpose
and the importance of specific actions within the tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-15 18:02:43 +05:30
Aishwarya-U-R
c1487a6125
test: Cypress | Replace static with Dynamic waits - Part III (#29582)
## Description
- This PR removes static wait from below:
- ClientSide/ActionExecution/*** & add dynamic waits as needed in below
specs:
       - /ActionSelector_JsToNonJSMode_1_spec.ts
       - /Error_handling_spec.ts
       - /NavigateTo1_spec.ts
       - /PostWindowMessage_spec.ts
       - /disableJSToggle_spec.ts
       - /setInterval_spec.js
       - /uiToCode_spec.ts
- ClientSide/AdminSettings/Admin_settings_spec.js
- ClientSide/AppNavigation/**
       - /AppNavigationWithMultiplePages_spec.ts
       - /AppNavigation_spec.ts
       - /Sidebar_spec.ts
       - /TopInline_spec.ts
       - /TopStacked_spec.ts

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
>
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Tests**
- Enhanced the reliability of Cypress end-to-end tests by replacing
fixed sleep times with dynamic element visibility checks.
  - Streamlined test execution by removing unnecessary wait commands.
- Improved test descriptions and ordering for better clarity and test
suite organization.
- Updated limited test configurations to reflect the current focus of
regression testing.

- **Chores**
- Adjusted the build workflow to optimize the test matrix based on the
type of GitHub event trigger.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-14 22:03:20 +05:30
Favour Ohanekwu
0c4586a64c
fix: defer data update for js objects (#29564)
## Description
This PR defers the update of JS Action's execution data
#### PR fixes following issue(s)
Fixes #29566

#### 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

## Summary by CodeRabbit

- **Refactor**
- Improved the execution timing of internal functions to enhance app
performance and responsiveness.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-14 14:10:32 +05:30
Aishwarya-U-R
6343e568df
test: Cypress | Replace static with Dynamic waits - Part II (#29557)
## Description
- This PR removes hard wait from - cypress/e2e/Regression/Apps/ folder
specs & fix as needed:
        - /Apps/CommunityIssues_Spec.ts
        - /Apps/[EchoApiCMS_spec.js
        - /Apps/ImportExportForkApplication_spec.js
        - /Apps/MongoDBShoppingCart_spec.ts
        - /Apps/PgAdmin_spec.js
        - /Apps/PromisesApp_spec.js
- This PR also removes Users mock ds dependency from below specs (using
TED instead)
        - ClientSide/Widgets/ListV2/ListV2_PageNo_PageSize_spec.js
        - ClientSide/Widgets/ListV2/Listv2_BasicServerSideData_spec.js
- Fixes Sanity/Datasources/MockDBs_Spec.ts - for record count validation

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Tests**
- Enhanced test reliability by removing hardcoded delays and utilizing
dynamic waits.
- Improved test maintainability by centralizing element interactions
through a custom helper.
- Streamlined test setup for database interactions, removing
environment-specific conditions.
	- Updated test file paths to reflect the new structure and focus areas.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-13 18:20:37 +05:30
Aman Agarwal
a6926a4fed
fix: sorting schema options alphabetically (#29460) 2023-12-13 13:21:23 +05:30
Aishwarya-U-R
a3baa9969d
test: Cypress | Flaky fix | Replace static waits - GitSyncedApps_spec.js (#29514)
## Description
- This PR removes hard wait & flaky fix from spec:
ClientSide/Git/GitSync/GitSyncedApps_spec.js

#### Type of change
- Script update (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Tests**
	- Adjusted test logic for currency input handling in regression tests.
	- Renamed test specifications for clarity.
	- Enhanced table widget API binding and pagination tests.
	- Skipped certain test suites for older app imports and admin settings.

- **Chores**
- Updated the git fetch command in the build workflow for better
repository syncing.

- **Documentation**
	- No user-facing documentation changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-12 10:57:08 +05:30
Aishwarya UR
adf159bfd6 Revert "skip"
This reverts commit e3699382b5.
2023-12-11 22:34:50 +05:30
Aishwarya UR
e3699382b5 skip 2023-12-11 22:34:06 +05:30
Rudraprasad Das
c6f26918dc
feat: ui for autocommit (#29441)
## Description
- Adds a button to enable/disable auto-commit in Git Settings
- Adds loading state for auto-commit

#### PR fixes following issue(s)
Fixes #29127 

#### Media
<img width="694" alt="image"
src="https://github.com/appsmithorg/appsmith/assets/8724051/628d9c93-f374-4611-9c1d-c568d3a6bed5">


#### Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)
>
>
>
## 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**
  - Introduced auto-commit functionality for Git synchronization.
- Added modals and status bars to manage and display auto-commit
progress.
- Implemented feature flags to enable or disable the auto-commit
feature.

- **Enhancements**
  - Updated Git settings to include auto-commit configuration options.
- Improved user interface with new messages and warnings related to
auto-commit.

- **Bug Fixes**
- Addressed issues with Git-related actions to ensure smoother user
experience.

- **Documentation**
- Added user-facing messages and descriptions for the auto-commit
feature.

- **Refactor**
- Refactored Git settings components to accommodate new auto-commit
feature.

- **Style**
- Updated styles to support new components related to auto-commit
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-12-11 21:11:43 +05:30
sharanya-appsmith
d287940a7d
test: Cypress - Added Tags to test cases - @tag.GSheet, @tag.Datasource, @tag.JS, @tag.IDE, @tag.Settings, @tag.Binding (#29471)
## Description
> Adding tags to the existing test cases 

Run GSheet test cases -    `/ok-to-test tags="@tag.GSheet"`
Run JS test cases   -  `  /ok-to-test tags="@tag.JS"`
Run IDE test cases    -  `  /ok-to-test tags="@tag.IDE"`
Run Binding test cases - `  /ok-to-test tags="@tag.Binding"`
Few datasource testcases (tags are added to few) using - ` /ok-to-test
tags="@tag.Datasource"`
To run both GSheet and Datasource tagged testcases -` /ok-to-test
tags="@tag.Datasource,@tag.GSheet"`
To run both Binding and IDE tagged testcases - ` /ok-to-test
tags="@tag.Binding,@tag.IDE"`
To run both Binding, IDE, JS tagged testcases - ` /ok-to-test
tags="@tag.Binding,@tag.IDE,@tag.JS"`





#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing

#### How Has This Been Tested?
- [x] Manual
- [x] Cypress


#### Test Plan
> ok to test with tags added 


## 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**
- Enhanced test suite categorization with the addition of metadata tags
for improved filtering and organization.

- **Refactor**
  - Reorganized test suite structures for clarity and maintainability.
  - Updated test descriptions and assertions for better test coverage.

- **Bug Fixes**
- Modified test cases to include additional validation steps for bug fix
verification.

- **Documentation**
- Updated test suite descriptions with new tags to reflect changes in
testing strategies.

- **Chores**
- Adjusted file paths for test specifications to align with the updated
testing focus.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-11 15:19:44 +05:30
Aishwarya-U-R
fe3863eb65
test: Cypress | Replace static with Dynamic waits - Part 1 (#29405)
## Description
- Removed hard waits from below specs:
    - Apps/CurrencyInputIssue_Spec.js
    - ClientSide/Widgets/Modal/Modal_spec.ts (Fix & unskip)
    - /Binding/TableV2_Widget_API_Pagination_spec.js
- Unskip - ApiTests/API_Unique_name_spec.js
- Flaky fix - TableV2_Widget_API_Pagination_spec.js
- Flaky fix - /ServerSide/QueryPane/S3_1_spec.js
- Removed empty ReusableHelper.ts
- Improved agHelper.GetElement() to include the assertion for element
presence/absence
- Modified helpers/function calls to fit the above syntax of
GetElement()
- Improved WaitUntilEleAppear(), WaitUntilEleDisappear() to use timeout
from cypress config

#### Type of change
- Script fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs

## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **Tests**
- Enhanced end-to-end test stability by replacing static waits with
dynamic element-based synchronization.
  - Skipped certain test suites to streamline the testing process.
- Improved test assertions and control flow for more reliable
verification of UI components.

- **Chores**
  - Updated test helper methods to support new verification strategies.
- Cleaned up unnecessary imports and inheritance in test support
classes.

- **Documentation**
- Adjusted test case descriptions to reflect the new synchronization
methods used.

- **Bug Fixes**
- Fixed issues with test synchronization that could lead to flaky test
results.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-11 14:39:36 +05:30
Vemparala Surya Vamsi
6395f2ea6a
chore: serialising moment updates #27963 (#29354)
## Description
Serialising moment updates directly, no longer making granular moment
object updates.
#### PR fixes following issue(s)
Fixes #27963
#### 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
>
>
#### 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
- [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
- [ ] 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

- **Bug Fixes**
- Improved error handling in certain scenarios to provide clearer
feedback to users.
  
- **New Features**
  - Enhanced date and time handling to ensure more reliable performance.

- **Tests**
- Updated automated tests to include additional wait times for better
stability and accuracy.

- **Documentation**
- Comments within the code have been updated to better reflect the
current logic for future reference.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-11 09:59:46 +05:30