Commit Graph

751 Commits

Author SHA1 Message Date
NandanAnantharamu
006dbfd46a
test:Fix canvas context prop01 (#36391)
EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5159

RCA:
The property section related validations were not working

Solution:

Enhanced verification of property pane section visibility using
accessibility attributes.
Introduced new UI interaction properties for managing collapsible
sections.

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

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10923368993>
> Commit: c996a38fba4d94cf80baf574d6ad3db75b2bb8cf
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10923368993&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Wed, 18 Sep 2024 14:10:07 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

## Summary by CodeRabbit

- **New Features**
- Improved test logic for verifying the state of property pane sections,
enhancing accessibility compliance.
- Updated limited tests to include new test specifications for the
property pane.

- **Bug Fixes**
- Enhanced robustness of tests by refining visibility state checks using
ARIA attributes.

- **Chores**
- Expanded locator capabilities in the testing framework to support new
UI components related to collapsible sections.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-09-19 11:39:44 +05:30
NandanAnantharamu
9f7e624b70
test: fix canvas context property pane (#36356)
EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5161
RCA:
The property section related validations were not working

Solution:
- Enhanced verification of property pane section visibility using
accessibility attributes.
- Introduced new UI interaction properties for managing collapsible
sections.

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



<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10919160204>
> Commit: 3d5c864891f027d03e5d50ddb15a185f980d83aa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10919160204&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Wed, 18 Sep 2024 09:42:19 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-09-18 17:31:40 +05:30
Pawan Kumar
27aeb4dc18
chore: fix map chart spec (#36370)
/ok-to-test tags="@tag.Maps"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10916335124>
> Commit: 6e88177f19e0b2deff3eed2d2531a8f88ec06a68
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10916335124&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Maps`
> Spec:
> <hr>Wed, 18 Sep 2024 06:11:15 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-18 11:53:42 +05:30
albinAppsmith
66c815f1cb
feat: Migrate DBform to UQI config (#36168)
## Description

This PR migrates the plugins which were old DBForm config to UQI config.
Plugins that got affected,
1. Snowflake
2. ArangoDB
3. Oracle
4. PostgreSQL
5. MySQL
6. Elasticsearch
7. DynamoDB
8. Redis
9. MSSQL
10. Redshift


Fixes #35496
Fixes #35497
Fixes #35500
Fixes #35487 
Fixes #35490 
Fixes #35491
Fixes #35499
Fixes #35501 
Fixes #35502
Fixes #35506 
Fixes #35890

## Automation

/ok-to-test tags="@tag.Datasource"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10897087023>
> Commit: e8fe475a48aac1e2e1f3184181ae0bed154313ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10897087023&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Tue, 17 Sep 2024 06:07:27 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


- **New Features**
- Enhanced rendering logic in the Query Editor to support additional UI
component types.
- Improved handling of form evaluations and query configurations across
various plugins, including ArangoDB, DynamoDB, Elasticsearch, and
others.
- Introduced structured layouts for editor configurations, enhancing
clarity and usability in multiple database plugins.

- **Bug Fixes**
- Adjusted control flow in sagas to ensure proper handling of UI
component types, improving user interactions.

- **Chores**
- Refined JSON configurations across multiple plugins for better
organization and maintainability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-17 14:22:32 +05:30
NandanAnantharamu
5dfbe8cac7
test: fix DataSourceScheme (#36339)
test:
Fixing DataSourceScheme test

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5155

Improved reliability of data source schema tests by ensuring correct UI
interactions and logical flow.
Enhanced verification process by checking for the absence of loading
spinners before data verification.

**Bugs Raised as part of fixing the spec:**

https://github.com/appsmithorg/appsmith/issues/36349
Test Skipped: https://github.com/appsmithorg/appsmith/issues/36348

/ok-to-test tags="@tag.All"



<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10885399399>
> Commit: 12ca3b6b75d5bb135dd4859c45a90d6a9ead81eb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10885399399&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 16 Sep 2024 15:08:37 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

## Summary by CodeRabbit

- **Bug Fixes**
- Skipped a test case for schema fetching due to a known bug, improving
test reliability.
  
- **New Features**
- Enhanced search functionality within the datasource structure,
ensuring previous inputs do not interfere with new searches.
- Improved interaction with the schema tab in the user interface for
better testing.

- **Documentation**
- Updated the path for limited tests to focus on the "Datasource Schema"
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-09-16 22:53:09 +05:30
Sagar Khalasi
996e26b537
fix: Fix datepicker issue with aghelper (#36325)
## Description

**Root Cause Analysis (RCA):**
In the local environment, the minDate field was consistently cleared as
expected, but this behavior was not replicated in the CI pipeline.
Updating the existing flow to address this issue could introduce other
problems. The minDate text area having js date function in the CI
pipeline, leading to repeated test failures. Multiple function attempts
to resolve this issue were unsuccessful.

**Solution**:
I tried using the `agHelper` utility and updated the test flow with
adding a new test case.

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5139

Fixes #`36329`  

## Automation

/ok-to-test tags="@tag.ImportExport"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10878662752>
> Commit: 0985fc573bbbc678850985babcbc027897c9d59f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10878662752&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.ImportExport`
> Spec:
> <hr>Mon, 16 Sep 2024 06:53:39 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
- Enhanced Datepicker widget functionality with new locators for
improved user interaction.
  
- **Bug Fixes**
- Improved test cases for the Datepicker widget, ensuring accurate
validation of display data and date formats.

- **Documentation**
- Updated test specifications to reflect a shift in focus towards the
Datepicker widget.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-16 13:33:53 +05:30
Pawan Kumar
7e98542495
chore: remove filled icon style setting (#36300)
Fixes #35175 

/ok-to-test tags="@tag.Anvil"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10845022776>
> Commit: 9224955b35c1083a6135afd956ba9026c91683c1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10845022776&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Fri, 13 Sep 2024 08:02:36 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

- **New Features**
- Simplified theme management by removing icon style options from the
user interface.

- **Bug Fixes**
- Enhanced clarity in theme handling by refining type usage in various
components.

- **Chores**
- Removed deprecated icon style properties and constants to streamline
code and improve maintainability.
- Deleted a test case related to icon styles to focus testing efforts
elsewhere.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-13 15:02:14 +05:30
Sagar Khalasi
6d64812d83
chore: exclude test for gitautocommit (#36307)
## Description
Excluding test case


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.ImportExport"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10846188820>
> Commit: 169260dd225113124f40f17898c59c5c0a770bba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10846188820&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.ImportExport`
> Spec:
> <hr>Fri, 13 Sep 2024 09:22:22 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
- Updated the "Git Autocommit" test suite to include a new tag for
exclusion in airgap environments, enhancing test execution strategy for
isolated systems.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-13 14:53:53 +05:30
Rahul Barwal
5996f74b73
test: fix failing table filter spec by rearranging steps. (#36303)
## Description
In the spec, feature flag intercept is interfering with navigating back
to editor flow.
Since we need FF in the editor, this PR rearranges these steps.


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Table"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]
> 🟣 🟣 🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/10845920958>
> Commit: c7de064cd6c262f969270be226a135371985646e
> Workflow: `PR Automation test suite`
> Tags: `@tag.Table`
> Spec: ``
> <hr>Fri, 13 Sep 2024 08:40:08 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Improved test flow for the Table V2 component by repositioning
navigation actions, enhancing clarity and context.
  
- **Chores**
- Updated the configuration for limited tests to focus on the Table V2
widget's filtering functionality instead of template-related tests.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-13 14:43:23 +05:30
Pawan Kumar
049a8a9c67
chore: remove typography selection in app theming (#36110)
/ok-to-test tags="@tag.All"

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

## Summary by CodeRabbit

- **New Features**
- Introduced new hooks for icon management: `useIconDensity` and
`useIconSizing`.

- **Improvements**
- Refactored hooks to enhance performance by using `useMemo` instead of
state management, leading to more efficient calculations for icon size,
density, spacing, and typography.
- Streamlined theme management by consolidating logic and removing
unnecessary properties, improving clarity and maintainability.
- Optimized CSS class name management within the `useCssTokens` hook for
better performance.

- **Bug Fixes**
- Removed `fontFamily` property from various components, which may
affect text rendering but simplifies font management.

- **Documentation**
- Updated comments and documentation to reflect changes in typography
and theme handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10786030048>
> Commit: a0d12586c130252d4164305c5293c1b6fb67b5eb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10786030048&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 10 Sep 2024 06:00:30 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-13 11:19:26 +05:30
Valera Melnikov
7ba06c829d
chore: change snapshot package (#35867)
/ok-to-test tags="@tag.All"

## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10815637874>
> Commit: 54937a7a64e755959e3420a0a20abcc30ee10d78
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10815637874&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 11 Sep 2024 17:30:00 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
- Added support for visual regression testing through new tagging in
various test suites.
- Integrated a new image snapshot plugin to enhance testing
capabilities.

- **Bug Fixes**
- Removed outdated image snapshot assertions to streamline testing
processes.

- **Documentation**
- Updated tags in multiple test suites to improve organization and
clarity regarding visual testing.

- **Chores**
- Upgraded Node.js version in the Cypress Dockerfile for improved
performance and compatibility.
- Simplified Cypress plugin configuration by removing unnecessary
functions and enhancing browser compatibility.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-12 11:09:42 +03:00
Jacques Ikot
8a9af791e4
feat: Allow table search to include label and value for tables with select column type (#36061) 2024-09-12 08:28:46 +01:00
Sagar Khalasi
1ccb023cf7
fix: Fixed Bug29566 spec with list widget (#36260)
## Description

**Root Cause Analysis (RCA):**

The test case in `BugTests/Bug29566_Spec.ts` has become flaky due to its
dependency on a third-party API call `(https://api.jsonbin.io/v3/b/)`.
As experienced automation engineers, we understand that relying on
third-party services can introduce instability and lead to frequent test
failures. In this particular case, the dependency was tightly coupled
with the test logic, and updating the data was not a viable solution.

**Solution:**

Upon assessing the situation, I determined that refactoring the existing
test would take significantly longer than rewriting it from scratch.
Therefore, I chose the rewriting approach to prioritize time efficiency.
The test flow has been updated while maintaining the same assertions for
data validation. Additionally, I have incorporated an extra assertion to
verify the data after a page reload to further enhance the robustness of
the test.

Fixes #`36259`  

## Automation

/ok-to-test tags="@tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10816309843>
> Commit: 2be906c50572425b31d84db8387e8e07b92314fb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10816309843&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 11 Sep 2024 17:34:50 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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


- **New Features**
- Enhanced testing for the list widget to ensure it populates correctly
on page load, addressing Bug 29566.
	- Introduced dynamic data sourcing for more accurate test scenarios.

- **Bug Fixes**
- Updated test cases to reflect changes in functionality and validate
correct data display.

- **Documentation**
- Renamed test case for clarity regarding the specific bug being
addressed.

- **Chores**
- Updated the limited tests configuration to focus on the new bug test
instead of a template test.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-12 09:38:46 +05:30
Pawan Kumar
b5f4c65719
chore: fix select1 spec (#36228)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Bug Fixes**
- Enhanced test functionality by adding a check for page save errors in
the "Select1" test, improving error handling before executing further
actions.

- **Chores**
- Updated testing priorities by commenting out the "Fork Template" test
and activating the "Select1" test in the limited tests configuration.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!WARNING]
> Tests have not run on the HEAD
d248530e0b95d34947fef3ffc2ba08e71e81dad7 yet
> <hr>Tue, 10 Sep 2024 11:37:57 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-11 11:28:44 +05:30
Sagar Khalasi
c44c35609c
fix: Fixed flaky fork template test case (#36200)
## Description
Root Cause Analysis (RCA):
The issue stemmed from the use of hardcoded templates in our tests,
which introduced inherent flakiness. This approach caused intermittent
failures, particularly when the hardcoded template was not available or
had changed.

Solution:
I have resolved this by implementing dynamic locators that select the
first available template during the test execution. This ensures greater
stability and reduces flakiness. The only scenario where this approach
could fail is if no templates are available, which would be a
product-level blocker rather than a test issue.


Fixes #`36199`  

## Automation

/ok-to-test tags="@tag.Templates"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10775279036>
> Commit: be8fc879c21fa90b7083e52d4cde52439f8f5546
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10775279036&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Templates`
> Spec:
> <hr>Mon, 09 Sep 2024 14:51:58 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Improved reliability of the template forking test by updating element
selectors and streamlining navigation steps.
- Enhanced test coverage by adding a step for generating a page with
data.

- **Chores**
- Renamed test specification file to better reflect its focus on
application-level testing.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-10 15:29:02 +05:30
Hetu Nandu
60dbda49e7
chore: Transitions for IDE (#35714)
## Description

Uses `AnimatedGridLayout` component to introduce transitions for the
IDE. This is behind a feature flag

Fixes #34538
Fixes #30863 
Fixes #34544 

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]
> 🔴 🔴 🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10737363879>
> Commit: a912f5c52366abe48768727a1c605cd72b48752c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10737363879&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec: 
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ServerSide/OnLoadTests/ExecuteAction_Spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Fri, 06 Sep 2024 16:32:30 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Introduced two new layout components: `AnimatedLayout` and
`UnanimatedLayout` for improved editor interface structuring.
- Added TypeScript type definitions for the DOM View Transitions API to
enhance type safety and developer experience.
- Implemented custom hooks, `useGridLayoutTemplate` and
`useEditorStateLeftPaneWidth`, for dynamic grid management and left pane
width calculation in the IDE layout.

- **Improvements**
- Enhanced layout responsiveness with the addition of dynamic grid
management.
- Updated the `Editor` component to use a centralized constant for
height calculations, improving maintainability and consistency.
- Enhanced test accuracy by refining assertions in the Git Branch
Protection test suite.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Sagar Khalasi <sagar@appsmith.com>
2024-09-09 16:25:50 +05:30
Sagar Khalasi
188e9f0643
fix: Video2 spec flaky fix (#36166)
## Description
RCA: We are using youtube url for `Verify Basic Functionality of Video
Widget - muted`. Which leads to flakiness. Also this case needs a human
intervention to fulfilled the actual user case.

Solution: Deleted this test as it can be part of manual testing.

Fixes #`36164`  

## Automation

/ok-to-test tags="@tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10766784105>
> Commit: 11d8d952f5e24cc49056532b15da190eefe8ba41
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10766784105&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 09 Sep 2024 05:41:15 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Removed a test case for the muted functionality of the Video Widget,
streamlining the test suite.
  
- **Chores**
- Updated the test path in the limited-tests file to prioritize video
widget testing over template testing.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-09 11:55:00 +05:30
Anagh Hegde
08ec688396
test: remove redundant select workspace in cypres test (#36138)
## Description

The spec MemberRoles started failing on PG branch(both ce and ee)
recently. In this spec the last step, which asserts the user with view
permission leaving workspace was failing. `the
_.homePage.LeaveWorkspace(workspaceId);` internally calls for
`_.homePage.SelectWorkspace(workspaceId);`

## Automation

/ok-to-test tags="@tag.Workspace"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10736154328>
> Commit: c9203b7da718cd2b718cf0fc990c4e4375cf5435
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10736154328&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Workspace`
> Spec:
> <hr>Fri, 06 Sep 2024 10:04:45 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Updated the test flow for workspace member roles to ensure accurate
simulation of user behavior when leaving a workspace.
  
- **Chores**
- Modified the limited tests configuration to focus on member roles,
removing the previous test for template for improved testing relevance.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-06 16:07:32 +05:30
Pawan Kumar
f06a82b7bb
fix: Theming Selected new Font is reverted whenever Color is removed (#36119)
Fixes #15007

/ok-to-test tags="@tag.Theme"


<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10733545727>
> Commit: dec21477152095d034f63a7e08d2719cb0687b12
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10733545727&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Theme`
> Spec:
> <hr>Fri, 06 Sep 2024 06:48:00 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

- **New Features**
- Enhanced theme validation for the multi-select widget, improving the
robustness of theme-related tests.
- Added new locators for featured themes to enhance testing
capabilities.

- **Bug Fixes**
- Reactivated a previously skipped test case to validate font
consistency across the application.

- **Refactor**
- Optimized color change handling in the ColorPicker component for
better performance and reliability.
- Refactored theme color control logic for improved maintainability and
clarity.

- **Improvements**
- Enhanced type safety in theme properties to prevent misconfigurations.
- Improved testability of the ThemeCard and ThemeSelector components
with new attributes for automated testing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-06 12:46:51 +05:30
Rudraprasad Das
45a3d814cb
fix: adding new test cases for git auto-commit (#34913)
## Description
Adds cypress test for checking auto-commit functionality

Fixes #33964

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10715693875>
> Commit: 3dda8362544b4bc7b977e780f7d1140b1343c93f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10715693875&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Thu, 05 Sep 2024 07:45:36 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Introduced an end-to-end test suite for the Git autocommit feature,
validating UI and backend interactions.
- Added a new property to track the autocommit status bar in the GitSync
class.
- Enhanced the AutocommitStatusbar component for better testability with
a new identifier.

- **Improvements**
- Made auto-commit eligibility checks always available by removing
feature flag gating.
- Improved logging visibility for auto-commit operations by adjusting
log levels.

- **Bug Fixes**
- Streamlined tests by removing unnecessary checks related to the
auto-commit eligibility feature flag.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: sondermanish <sonder.manish@gmail.com>
2024-09-05 23:42:10 +08:00
Hetu Nandu
65eb8546f4
fix: Fall of the error toasts wall (#35839) 2024-09-05 11:06:43 +05:30
NandanAnantharamu
bdeeea5c77
test: fix inline editing spec (#35986)
RCA:
Toggle state of the property was going to wrong state, hence with retry
test was passing as it would bring back the application to required
statee.

Solution:
Updated toggle state in the flaky test to avoid this issue

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/4997

/ok-to-test tags="@tag.Sanity"



<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10633979760>
> Commit: b63e5716203e0865ad493b1bc0ab8e952aaa7301
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10633979760&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Fri, 30 Aug 2024 14:27:24 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


- **New Features**
- Enhanced inline editing functionality for table widgets, improving
interaction and validation in tests.

- **Bug Fixes**
- Updated limited tests configuration to prioritize inline editing tests
over previous specifications.

- **Tests**
- Improved test coverage for inline editing by adding interactions with
dropdowns and property state toggling.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-30 20:05:41 +05:30
Jacques Ikot
826a33aa9c
fix: Prevent Errors in Debugger When Deleting List Widget (#35820)
## Description
**Problem**
When deleting a List widget in the EE environment, the widget is
successfully removed, but errors are displayed in the in-app debugger.
These errors disappear upon refreshing the page, leaving users confused
as to why the errors appeared in the first place, despite the widget
being deleted correctly.

**Root Cause**
- The issue arises from the sequence in which widgets and their
associated meta widgets are deleted.

- When deleting a widget with meta widgets (e.g., a List widget):

  - The main widget is removed first via the deleteWidget saga.

- Meta widgets are then deleted later during the componentWillUnmount
lifecycle method.

- The lint evaluation runs between these two processes, detecting meta
widgets still present in the state without a parent widget.

- This mismatch triggers errors in the in-app debugger, which disappear
once the page is refreshed, as the meta widgets have already been
deleted by then.

**Solution**
- We have modified the deletion process to ensure that both the main
widget and its associated meta widgets are removed within the same
action.

- Instead of handling meta widget deletion in the general deleteSaga:

- We now check for widgets with the hasMetaWidgets flag within the
deleteWidget saga.

- If such widgets are found, their meta widgets are deleted before the
main widget is removed from the layout.

- This adjustment ensures that the lint evaluation occurs after both the
main widget and its meta widgets have been removed, preventing errors in
the debugger.


Fixes #35628

## Automation

/ok-to-test tags="@tag.Widget, @tag.List, @tag.IDE, @tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10629216245>
> Commit: 56a4c85076d574cc2ebfef12d3b9f998ee1a4ece
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10629216245&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.List, @tag.IDE, @tag.Sanity`
> Spec:
> <hr>Fri, 30 Aug 2024 09:25:02 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Enhanced testing for the list widget to include verification of the
drag, drop, and delete functionalities.
- Improved widget deletion process by ensuring related meta widgets are
also addressed during deletion.
- Updated test descriptions for better clarity and scope, specifically
focusing on deletion functionality.
- Introduced a factory for creating instances of version 2 list widgets,
streamlining widget generation.

- **Bug Fixes**
- Expanded test coverage for potential issues in widget behavior,
particularly concerning deletion.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-30 10:38:19 +01:00
NandanAnantharamu
67de8c1a19
test: updated tests for checkboxgroup (#35945)
RCA:
Test was failing after removing retry, the issue was it was clicking on
a checkbox which was not required.
the retry actually was bringing back the system to right state by
clicking again.

Solution:
We removed the step that was unnecessary in this case which resolved the
issue
EE: https://github.com/appsmithorg/appsmith-ee/pull/4992

/ok-to-test tags="@tag.Sanity"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10616697878>
> Commit: e599c6d0149814c38049aaba7828465361d8f43b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10616697878&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 29 Aug 2024 14:33:59 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: karthik <thinkify@karthiks-MacBook-Pro.local>
2024-08-29 22:55:33 +05:30
Anna Hariprasad
5ddf6e6977
feat: remove-clear-option-for-required-select-widget (#35060)
Hi @rohan-arthur, @somangshu , @contributor-support 

**Fixes** #34262 

**What's in this pr :**

- Added isRequired prop for select widget components to control the
logic for the remove button.
- Added two test cases to verify clear button rendering when isRequired
is set to true and false.

**Screenshots :**

![image](https://github.com/user-attachments/assets/4c276add-f28e-4060-8f44-a957dc48f673)

![image](https://github.com/user-attachments/assets/02138d93-e4c1-4e67-97df-0703398c440b)

![image](https://github.com/user-attachments/assets/8eb8ec6f-9124-4a61-9df4-448338086714)

Please let me know if any changes are required.

Thank you.

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

## Summary by CodeRabbit

- **New Features**
- Introduced an `isRequired` property to the `SelectButton`,
`SelectComponent`, and `SelectWidget`, allowing users to indicate
whether a selection is mandatory.
- Enhanced rendering logic in the `SelectButton` to conditionally
display the cancel button based on the `isRequired` state.
- Improved styling and behavior options in `SelectComponent` for better
integration into forms.

- **Tests**
- Added new test cases for the `SelectButton` to ensure correct
rendering behavior of the cancel button based on the `isRequired` prop.
- Streamlined Cypress tests to focus on the non-existence of the clear
button, reflecting updated component behavior.
- Updated locator configurations to improve test coverage for user
interactions involving clearing selections.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-28 16:03:16 +05:30
Jacques Ikot
9f387d5763
fix: Correct Select Widget Mapping for Dynamic Label and Value Keys (#35862)
## Description
**Problem**
When the Select widget's labelKey or valueKey properties are switched to
JS mode, passing a function that returns a string as the key causes the
dropdown options to break. Instead of correctly mapping the labels and
values, the options are incorrectly returned as an array of the key
itself.

**Root Cause**
The issue lies in the `getOptions` function in derived.js. The logic
that computes the select options based on the labelKey and valueKey was
not handling cases where these properties are functions that return
arrays. Instead of mapping through the source data and returning the
corresponding values for each key, the function was mistakenly returning
the entire array.

**Solution**
The `getOptions` function in derived.js has been updated to correctly
handle cases where labelKey or valueKey are arrays. The function now
maps through the sourceData and computes the correct labels and values
based on the provided properties, ensuring that the dropdown options are
displayed as expected.



Fixes #35269

## Automation

/ok-to-test tags="@tag.Sanity, @tag.Select, @tag.Widget, @tag.Binding"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10560970428>
> Commit: 118badee07c47fe72f727f8ab248c29685f6f7a1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10560970428&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Select, @tag.Widget, @tag.Binding`
> Spec:
> <hr>Mon, 26 Aug 2024 15:24:26 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


- **New Features**
- Enhanced test coverage for the Select widget by adding new test cases
to validate the correct functioning of JavaScript functions in the label
and value keys.
- Improved processing of `optionLabel` and `optionValue` properties for
the Select widget, ensuring accurate mapping to `sourceData`.
- Introduced a new helper function to streamline the validation of label
and value keys in the Select widget tests.

- **Bug Fixes**
- Corrected the handling of multiple options in the Select widget to
enhance data mapping accuracy and functionality.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-27 07:54:44 +01:00
Jacques Ikot
28ac53bf6e
fix: Ensure Select Column Displays Data When Options Are Not Set (#35817)
## Description
**Problem**
When using a table widget, changing a column to the "Select" type causes
the data in that column to disappear unless the options property is
explicitly set. This creates a poor user experience, as it appears that
the data has been lost or the widget is malfunctioning.

**Solution**
We have implemented a fallback mechanism to ensure a smoother user
experience. If no options are set in the property pane, the label inside
the select cell will now default to displaying the existing value. This
ensures that the data remains visible, even in the absence of predefined
options.


Fixes #35807

## Automation

/ok-to-test tags="@tag.Widget, @tag.Select, @tag.Binding, @tag.Table,
@tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10513374411>
> Commit: 1e89468e8345f2fc351c100428dca76a7a455dbc
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10513374411&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.Select, @tag.Binding, @tag.Table,
@tag.Sanity`
> Spec:
> <hr>Thu, 22 Aug 2024 19:43:53 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


- **New Features**
- Enhanced the select column in the table widget to return a default
value when no options are available.

- **Bug Fixes**
- Improved robustness of the select cell component to prevent errors
when the options array is empty.

- **Tests**
- Updated and reorganized test cases for the select column to improve
clarity and specificity.
- Introduced a new test case to validate default value behavior when no
options are provided.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-23 10:10:27 +01:00
Pawan Kumar
f91073eae1
chore: fix zone dotted highlight is not showing up on new anvil apps (#35787)
Fixes #35231

/ok-to-test tags="@tag.Anvil"

Before:
![CleanShot 2024-08-20 at 16 52
13](https://github.com/user-attachments/assets/bcc40ba9-0e8f-40c0-a38d-b22983932dc4)

After:
![CleanShot 2024-08-20 at 16 52
31](https://github.com/user-attachments/assets/1a5d3533-72e3-474a-8ad9-4af69dd4ae86)


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

## Summary by CodeRabbit

- **New Features**
- Improved widget border style handling by simplifying parameters and
logic.
- Enhanced visual consistency by removing the `elevatedBackground`
consideration from various components.
- Refined test logic to focus on section properties during space
distribution.
- **Bug Fixes**
- Addressed potential inconsistencies in widget appearance related to
background elevation settings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]
> 🔴 🔴 🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10503394684>
> Commit: 574aab588e35fc90e59720010e2b8a249bf824ed
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10503394684&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.Anvil
> Spec: 
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilHeadingWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Thu, 22 Aug 2024 07:30:08 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-08-22 12:46:48 +03:00
Rahul Barwal
6c8d4a9a66
fix: Fixes currentRow calculation logic in table(property pane) (#35390)
## Description

<ins>Problem</ins>
`currentRow` variable which is availabe in property pane of col settings
- is not getting correct value during runtime if the table is sorted or
filtered.

<ins>Root cause</ins> 
* We are considering `processedTableData` to get the `currentRow`.
* This property is not updated during filtering and sorting, another
property `filteredTableData` is updated instead.
* We CANNOT use `filteredTableData` as it depends on `primaryColumns`
property which we intend to update as well - this is leading to cyclic
dependency during evaluations.

<ins>Solution</ins>
Since the problem is related to edit cases and given the constraints
around using `filteredTableData` directly, we fixed the problem by
adding a new property to `editableCellValue` object called
`__originalIndex__`.
* This property stores the index of the row being edited in
`processedTableData`
* On top of this change, the PR adds a migration for updating the
current row binding in TableWidgetV2, ensuring accurate current row
calculation and improving the functionality of the widget.
* We also added unit test for migration changes.
* Additionally, This pull request refactors the DSLs for TableWidgetV2
migration test cases to update the DSLs to separate folder, drastically
reducing the file size to its core logic, improving the readability of
the code.
 * We also updated relevant test cases to account for this change.

[Testing
plan](https://www.notion.so/appsmith/Issue-34346-currentRow-doesn-t-work-correctly-when-the-table-is-filtered-449225ae822c485493036599c2b19487)
[Counter part EE
pr](https://github.com/appsmithorg/appsmith-ee/pull/4879)

Fixes #34346
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10451549845>
> Commit: d1d65c6898c223bf3f6dfbfe93b8e8de214fcc7d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10451549845&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 19 Aug 2024 11:15:04 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [x] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Updated DSL migration process to support version 90, enhancing
compatibility and robustness.
- Introduced new migration logic for table widget data bindings,
improving inline editing capabilities.
- Enhanced validation logic for editable cells in table widgets,
allowing for more dynamic data handling.
- Added a method to discard edits in specific table cells, improving
user interaction.
- Introduced a new message constant for required fields, enhancing user
feedback.

- **Bug Fixes**
- Improved validation checks for table cells based on updated indices
and values.

- **Tests**
- Added comprehensive tests to validate migration functions related to
Table Widget, ensuring all aspects function correctly post-update.
- Enhanced test specifications for improved validation logic and
coverage in table widget functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: sneha122 <sneha@appsmith.com>
2024-08-20 13:31:45 +05:30
Jacques Ikot
6628635cf4
fix: mandatory date column enforcement (#35613)
## Description
**Problem:**
When the `isRequired` property is set for date columns in the table
widget, the validation doesn't work as expected. Users can add new rows
without filling in the date field, even though it is marked as required.
This results in rows being added with missing date values, which can
lead to incomplete or invalid data entries.

**Root Cause:**
The validation logic for the date column is currently handled within the
DateCell component. However, the isRequired validation functionality was
not implemented within this component. Additionally, the general
validation logic in the `getEditableCellValidity` function, located in
the derived.js file, does not account date cells in its isRequired
validation.

**Solution:**
To fix this issue:

**Enhance the `getEditableCellValidity` function:** Extend the existing
validation logic in getEditableCellValidity to include the date cell in
its validation, specifically checking for the isRequired property.

**Integrate with DateCell validation:** Ensure that the isRequired
validation is properly executed in conjunction with the existing date
validations inside the DateCell component. This will enforce the
requirement and prevent new rows from being added if the date field is
left empty.

**Test Plan**

https://www.notion.so/appsmith/Test-Plan-Date-Column-Marked-as-Required-Doesn-t-Enforce-Mandatory-Entry-When-Adding-New-Table-Row-c73b764af60842a188cba056bdda6d79?pvs=4

Fixes #34258

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10453174231>
> Commit: 40fe2eaf7d45024bef00f8031e971a5bac2a4e3e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10453174231&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 19 Aug 2024 13:17:23 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


## Summary by CodeRabbit

- **New Features**
- Introduced validation for "Date" column types, ensuring that required
fields are correctly enforced.

- **Enhancements**
- Improved validation logic for more accurate user feedback in date
cells.
  - Expanded support for validating "date" columns in the table widget.

- **Bug Fixes**
- Enhanced error handling to ensure proper indication of cell validity
based on new validation criteria.
  - Updated visual feedback for cell editor state in the UI.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-20 07:09:51 +01:00
Sagar Khalasi
25349c1c66
test: Update case base duplicate file name (#35672)
## Description
Remove the duplicate file name with different cases as well.


Fixes #`34939`  

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10370869517>
> Commit: 242ca07a87991f5786bd8a33aeefaf046e2a29e0
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10370869517&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 13 Aug 2024 14:36:34 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
2024-08-20 10:48:52 +05:30
Rahul Barwal
32f2986662
chore: fix flaky datepicker spec. (#35726)
## Description
In the past we attempted to remove the `DatePickerV2_spec` from flaky
list after successful `/ci-limit-test` runs ([EE PR with
runs](https://github.com/appsmithorg/appsmith-ee/pull/4736)).
But the very next day it had to be added back to the flaky list. There
was certainly a problem which was not getting caught on local and
`ci-limit-test` runs.

Upon observing the [last known failure run of this
spec](https://internal.appsmith.com/app/cypress-dashboard/run-details-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10096251875&attempt=5&selectiontype=test&testsstatus=failed&specsstatus=fail),
this error got highlighted:
> CypressError: Timed out retrying after 100000ms: `cy.wait()` timed out
waiting `100000ms` for the 5th response to the route: `updateLayout`. No
response ever occurred.

Upon further debugging and a loooot of local runs I noticed that even
though we were changing the `Max date` at the end of this spec does not
do anything(on the product UI) and more importantly had no impact on the
test run.

So we removed it. The good thing is that in current [EE
PR](https://github.com/appsmithorg/appsmith-ee/pull/4907) as well there
are no failures.
> PS: I would still be on alert after merging to notice any more
failures and add it back to flaky, if it troubles other team members.


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Datepicker, @tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10446454718>
> Commit: b0348f4f13c6b36cb35b0a5fd596513d42ab7837
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10446454718&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datepicker, @tag.Sanity`
> Spec:
> <hr>Mon, 19 Aug 2024 03:36:10 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Adjusted the DatePicker component's test to remove the maximum date
constraint, allowing for a broader range of valid dates during testing.
- Revised conditions for tooltip assertions related to date range
validation.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-19 09:16:48 +05:30
sneha122
37b5225117
test: fixed skipped graphQL test (#35571)
## Description

**Context:**
This cypress test is asserting the fixes made for
[bug](https://github.com/appsmithorg/appsmith/issues/16702)
Bug recording:
https://www.loom.com/share/ccf9fccc89064ee7b4230aaf5bf3cc52

Basically bug was that when using bindings inside query of graphQL API,
autocomplete menu shows up for first binding, but not for second
binding. This test case asserts that autocomplete menu shows up every
time inside binding for query

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/4856

This PR fixes the skipped test of spec file:
cypress/e2e/Regression/ClientSide/BugTests/GraphQL_Binding_Bug16702_Spec.ts


Fixes #35147 
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Datasource"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10383572807>
> Commit: 0a655d760eeb23ac2aaf3251bb26d5cb848ec58f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10383572807&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Wed, 14 Aug 2024 09:15:08 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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


## Summary by CodeRabbit

- **Bug Fixes**
- Updated the test for a GraphQL binding issue, now actively validating
the resolution of a formatting bug that affected autocomplete
functionality.
- Enhanced test clarity by removing redundant code and optimizing the
test flow for improved execution efficiency.
- **Chores**
- Changed the focus of the limited test scenario to prioritize
addressing the GraphQL binding bug over template-related
functionalities.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-08-14 15:22:33 +05:30
Abhinav Jha
31be835726
chore: Anvil on canvas UI tests (#35342)
## Description
### Unit
`index.test.tsx` - (Main connected component that uses floating ui)
- [x] Test rendering of widget name component (floating-ui) based on
"select", "focus" and "none" states from redux selector
- [x] Test rendering of widget name component (floating-ui) based on
error count from redux selector

`AnvilWidgetNameComponent.test.tsx` (Standalone component that renders
content for floating ui to use)
- [x] Test rendering of standalone widget name component based on props.
- [x] Test calling of `onDragStart` callback from the standalone widget
name component.

`SplitButton.test.tsx` (Low level UI component - child of
`AnvilWidgetNameComponent`)
- [x] Test left and right toggle click triggers
- [x] Test if component handles props correctly


### E2E
- [x] Test Dragging via widget name component
- [x] Test widget name component when multiple widgets are selected
- [x] Test Hover and Selection to show widget name component

Fixes #33979

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10349986042>
> Commit: 8c9e6b933fc63306ca4b9322d2cc109909df879d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10349986042&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 12 Aug 2024 11:13:52 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
- Introduced a comprehensive suite of end-to-end tests for the Anvil
editor's UI in canvas layout mode.
- Enhanced flexibility in widget manipulation on the canvas with an
updated method.
	- Expanded selectors for more precise targeting of UI components.
- Added unit tests for the `AnvilWidgetNameComponent` and `SplitButton`
components to ensure expected functionality.

- **Bug Fixes**
- Improved responsiveness of the `AnvilWidgetName` component to state
changes.

- **Documentation**
- Updated comments and structure for clarity in test scenarios and
component functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-12 23:55:55 +05:30
Jacques Ikot
35839c6bb3
test: fix flaky inline editing 2 spec (#35426)
## Description
Fix flaky test - `Inline_editing_2_spec.js`

Related EE PR for fix -
https://github.com/appsmithorg/appsmith-ee/pull/4819

**Problems**
Previous change made to remove the editable checkbox from the columns
list on the table property pane made the `table.EnableEditableOfColumn`
obsolete as a method for enabling edit mode on specific columns. There
is a newly introduced method `toggleColumnEditableViaColSettingsPane`
was swapped only in some cases, not implemented correctly, and in some
other cases, the `table.EnableEditableOfColumn` still existed, causing
the test to fail.

**Solution**
1. Fix the implementation of the
`table.toggleColumnEditableViaColSettingsPane` in all instances in the
test suit
2. Replace `table.EnableEditableOfColumn` with
`table.toggleColumnEditableViaColSettingsPane` in tests
3. Move standalone values into consts for readability
4. Remove unused const


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10352974239>
> Commit: 83116d9c64f95946ab0ba7399c7e1c491f2d2851
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10352974239&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 12 Aug 2024 14:08:51 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **Bug Fixes**
- Improved reliability of inline editing tests for the table widget,
ensuring consistent behavior when editing columns.

- **Improvements**
- Enhanced clarity of test case descriptions regarding cell column
height behavior with text wrapping.
- Updated height assertions to use constants for better readability and
maintainability.

- **Chores**
- Changed focus of limited tests from template-related tests to inline
editing functionality tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-12 17:48:25 +01:00
Rahul Barwal
b64d5c8338
fix: drag and drop issue in list widget (#35622)
## Description
This pull request fixes an issue where the error count was not being
properly checked when a list widget was dropped.

* Reverts a previous commit(#35221). 
* Include changes to the test file and the widget creation functions to
ensure that the error count is correctly checked when a list widget is
dragged and dropped.

Fixes #35578
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10350318730>
> Commit: 07f3abcff845eb4d350fc9af235d6ed076257264
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10350318730&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 12 Aug 2024 11:35:20 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
	- Improved drag-and-drop functionality for list widgets.
  
- **Bug Fixes**
- Enhanced clarity and organization of test cases for better logical
flow.

- **Chores**
- Simplified widget ID generation across several components, improving
consistency in the application.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-12 17:24:19 +05:30
Hetu Nandu
4bbbaecf20
chore: Upgrade TinyMCE (#35399) 2024-08-08 20:08:09 +05:30
Aman Agarwal
f0059fe894
fix: table save row button onclick function (#35412) 2024-08-08 18:46:40 +05:30
Sagar Khalasi
6d1b9bdc2c
test: fix flaky case for forkapp (#35376)
## Description
Fix case with adding one more assertion with wait.
RCA: 
The issue was not with the function itself but rather with the flaky
behavior of the Cypress code. The modal was opening, and our code was
attempting to click the “Skip to Application” button too quickly. The
actual validation was only for SkipToAppBtn, but in the application, the
modal was still loading, causing Cypress to perform the action
prematurely, which led to failures. To address this, I added an
additional wait for another element, and this resolved the issue.


Fixes #`35375`  


## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10279433214>
> Commit: 748f4f7cf960355a957e59f3956a47880494da93
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10279433214&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Fork`
> Spec:
> <hr>Wed, 07 Aug 2024 07:08:45 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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


## Summary by CodeRabbit

- **New Features**
- Enhanced test robustness for the ForkApplication component by
implementing a prerequisite check for the presence of a critical UI
element linked to data sources.

- **Bug Fixes**
- Improved control flow in tests to ensure that necessary elements are
available before proceeding with actions, reducing the likelihood of
test failures.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-07 13:55:22 +05:30
Aman Agarwal
a0f2ee10ce
fix: collapse params & query params in action selector if value is not changed (#35323) 2024-08-02 15:01:18 +05:30
Jacques Ikot
3b1c14a9f0
feat: add sortBy property to table select cell type (#35187)
## Description
**Problem**
The table widget now supports the Select column type, which allows the
column to contain both a label and a value. This could be useful for
currency fields, foreign keys, or any other case where you want to
display a different version of the column value. However, there is a
problem with sorting. The table always sorts using the value, and does
not give the user an option to sort using the label, where it makes
sense in specific cases.

**Solution**
This PR adds a Sort By property to the table select cell, allowing the
users to choose which value is used for sorting without affecting any
functionality of the label or value of the select cell.

[Additional Technical
Documentation](https://www.notion.so/appsmith/Adding-sortBy-Property-to-Select-Columns-in-Table-Widget-V2-a5a41e6319a047378eb50a42be8c32ef?pvs=4)

**Tested Cases**
1. Sort select column by default value
Objective: Ensure that a newly added table with select column default
sorts by the value
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type.
- Add selectOptions property
- Verify that when sorted in ascending or descending order, the sorting
is correct

2. Sort select column by label
Objective: Ensure that a newly added table with select column and sortBy
property set to label sorts correctly
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that when sorted in ascending or descending order, the sorting
is correct and based on the label value only

3. Verify that sorting of other table cells that are not select works as
expected
Objective: Ensure that every other cell type in the table sorts
correctly
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that when columns other that role are sorted, they are sorted
correctly

4. Verify that sorting works as expected when table data is a binding
Objective: Ensure that the sorting works for all columns while using
data binding in table data
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property
- Verify that all columns sort correctly

5. Verify that sorting works as expected when table data is a binding
and select column sorting is set to label
Objective: Ensure that the sorting works for all columns while using
data binding in table data with a select column set to sort by the label
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that all columns sort correctly

6. Verify that sortBy logic does not take effect or break user
experience until the user adds selectOptions in select cell
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property or add raw data
- Set a column (e.g., role) to select type
- Do not add selectOptions
- Set sortBy property to label
- Verify that all other columns display and sort correctly

7. Verify that sorting by label and value works correctly in deployed
mode
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property or add raw data
- Set a column (e.g., role) to select type
- Add selectOptions
- Set sortBy property to label
- Deploy application
- Confirm that sorting works correctly for all columns

Fixes #21993 

## Automation

/ok-to-test tags="@tag.Table, @tag.Binding, @tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10165119164>
> Commit: 8a4e8b238adc0d78726a811b54a209caa4990606
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10165119164&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Sanity`
> Spec:
> <hr>Tue, 30 Jul 2024 16:02:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [x] Yes
- [ ] No


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


- **New Features**
	- Introduced a feature flag for dynamic table cell labeling.
- Added a sorting option for select cells, allowing sort by value or
label.
- Enhanced user interface with new configuration options for select
components.
	- Improved sorting functionality for select columns to sort by labels.

- **Bug Fixes**
- Improved sorting functionality in the table widget to ensure accurate
data representation.

- **Tests**
- Expanded and clarified test cases for sorting functionality in the
Table Widget V2.
- Updated testing structure for better reliability and isolation of test
scenarios.
	- Integrated dynamic testing capabilities based on feature flags.

- **Documentation**
- Added new locators for sorting controls to enhance UI interaction
capabilities.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-02 08:37:00 +01:00
Jacques Ikot
e8cb460b77
feat: move building blocks to bottom of widget explorer (#35270)
## Description
**Problem**
While we don't have the configuration interface for blocks, we should
make them available as we have other regular widgets, but we shouldn't
promote them for new users, since they are not able to easily modify
them.
Remove the building blocks empty state that is creating confusion.

**Solution**
1. Move the building blocks group to the bottom of the widget sidebar
2. Adjust tests to suit new demands

Fixes #34964

## Automation

/ok-to-test tags="@tag.IDE, @tag.Widget, @tag.Templates"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10187244230>
> Commit: e0aac0ea572e34716e8613a272c5ba0cadbd6fde
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10187244230&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE, @tag.Widget, @tag.Templates`
> Spec:
> <hr>Wed, 31 Jul 2024 21:39:07 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


- **New Features**
- Simplified the onboarding component to display static content instead
of dynamic behavior based on application state.
  
- **Bug Fixes**
- Updated test cases for the onboarding component to ensure it does not
render in preview mode, enhancing accuracy in expected behavior.
- Revised tests to reflect changes in the visibility of the suggested
widgets based on feature flag settings.

- **Chores**
- Minor reorganization of import statements and constants for clarity
without affecting functionality.
- Streamlined the visibility logic of suggested widgets by removing
unnecessary feature flag dependencies.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-01 14:01:40 +01:00
NandanAnantharamu
9478bb5bd1
test: switch branch spec ce (#35312)
Enabled Test
Replaced some validations with should with aghelper assertions

EE: https://github.com/appsmithorg/appsmith-ee/pull/4755

/ok-to-test tags="@tag.Sanity"




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


- **Bug Fixes**
- Enhanced testing for Git synchronization by refining branch name
handling in input fields, leading to improved reliability.

- **Chores**
- Updated the Cypress limited tests to focus on the
`SwitchBranches_spec.js`, changing the test execution target.
	- Removed unnecessary wait command to streamline test execution.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10181073301>
> Commit: 41db4eb0488c0cec98f06b0b7a7377a93c46b433
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10181073301&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 31 Jul 2024 13:48:05 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-08-01 11:52:09 +05:30
Hetu Nandu
e0d0ee1046
chore: Reorganise IDE Panels (#35114)
## Description

By re organising the panels in the IDE, we are creating a new Code
Editor only panel which is separate from the main / canvas and the
explorer panel. This ensures that the Code Editor is not remounted when
switching between Split screen and Full screen. This PR is also
improving the Preview mode by not changing urls when entering and
exiting preview modes.

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/4760

Fixes #31707
Fixes #31387
Fixes #34545
Fixes #34546

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10177085462>
> Commit: 26688b0fde7e797d88996ef569d9fc06e3942958
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10177085462&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 09:42:50 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Introduced `EditorPaneExplorer` and `QueryExplorer` components for
enhanced navigation and query management within the IDE.
- Added visual enhancements to `ListJSObjects` and `AddWidgets`
components with new style properties.

- **Improvements**
- Implemented clamping in the `useDynamicAppLayout` hook to prevent
negative width values, enhancing layout stability.
- Updated layout management to ensure a responsive user experience based
on IDE view modes.

- **Style**
- Enhanced visual clarity by adding borders to various components,
improving UI separation and organization.

- **Bug Fixes**
- Streamlined test cases in the `Postgres2_Spec.ts` to maintain coherent
sequencing after removing unnecessary tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-31 21:23:35 +05:30
Sagar Khalasi
b7629b3514
test: Updated duplicate file names (#34972)
## Description
Updated name for duplicate file name with extensions as well in spec
file.


Fixes #`34965`  

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9960943316>
> Commit: 71dee8e1400f227a6183a760832dd703d7074d1f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9960943316&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 16 Jul 2024 17:46:48 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
2024-07-31 10:27:33 +05:30
Nidhi
de443104f2
chore: rm dr ce (#34765)
Co-authored-by: brayn003 <rudra@appsmith.com>
2024-07-31 08:24:51 +05:30
Jacques Ikot
2cded02983
feat: display label in table select cell (#35124)
## Description
**Issue**
In the table widget, the select column currently displays the value from
the dropdown when a user makes a selection, rather than the label. This
behaviour is inconsistent with the standalone select widget, which
correctly renders the label upon selection.

**Fix**
This PR addresses the inconsistency by modifying the table widget's
select column to display the label of the selected item, while
maintaining the table cell value and ensuring alignment with the
behaviour of the standalone select widget.

**Tested Cases**
Manual Test Cases for Table Select Widget Improvement

1. Default Value Display
**Objective:** Ensure that a new table displays the correct default
label key from the selectOptions in the cell.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Verify that the table cell displays the value from the label key of
the `selectOptions` by default.

2. Binding Check for Selected Row
**Objective:** Ensure that the table binding for the selected row
reflects the correct value key from the selectOptions.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Select a row and verify that `Table1.selectedRow.gender` matches the
value key from the `selectOptions`.

3. Updating Table Cell Content
**Objective:** Verify that updating the table cell content via the
dropdown updates the cell with the correct label key property.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Change the content of the table cell using the dropdown.
- Confirm that the cell content updates accordingly with the value key
property.

4. Add New Row Functionality
**Objective:** Ensure that adding a new row works as expected with the
enhanced functionality.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Add a new row to the table.
- Verify that the new row uses the label key property from the
`selectOptions` in the table display.

5. Deployed Mode Verification
**Objective:** Verify that the display functionality works correctly in
deployed mode.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Change the displayAs property to both value and label.
- Deploy the table.
- Verify that the table displays correctly in both value and label modes
in the deployed environment.


Fixes #26188

## Automation

/ok-to-test tags="@tag.Table, @tag.Binding, @tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10080592979>
> Commit: 78b268d2b566aa07ef23fec567ce05e8c5a6add4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10080592979&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Sanity`
> Spec:
> <hr>Wed, 24 Jul 2024 17:17:06 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

- **New Features**
- Improved display of selected options in table widgets by showing the
corresponding label instead of the raw value.
- Introduced a feature flag to toggle the table cell label value
functionality.

- **Bug Fixes**
- Enhanced test cases to ensure accurate validation of select options
behavior within the table widget.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-25 12:39:24 +01:00
Hetu Nandu
7b5ad60069
fix: Remove collapsed widget tags (#34979) 2024-07-23 18:46:01 +05:30
Pawan Kumar
2e2f4419bd
chore: add tests for app theming (#34839)
/ok-to-test tags="@tag.Anvil"

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

- **New Features**
- Introduced theme setting and snapshot verification for various widgets
in different modes (Canvas, Preview, Deploy).
- Added a new CSS rule to enhance the styling of input elements based on
specific conditions.

- **Refactor**
- Renamed existing snapshot verification methods to more descriptive
names across multiple widget snapshot files.
- Added methods to handle theme settings and detailed snapshot matching.

- **Tests**
- Enhanced testing functionality for widgets with updated methods for
snapshot verification across different themes.

These updates ensure more detailed and theme-specific snapshot testing
for various widget states, improving test coverage and accuracy, as well
as enhancing the layout consistency of input elements.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10046186626>
> Commit: a6232ae795f77bd46bff4c854f46c5671a518ff6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10046186626&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 22 Jul 2024 18:43:52 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: Valera Melnikov <valera@appsmith.com>
2024-07-22 22:08:48 +03:00
Saicharan Chetpelly
e58b10da6a
fix: expose isVisible field in JSONFom widget autocomplete (#34869)
Fixes [#31114](https://github.com/appsmithorg/appsmith/issues/31114)
Added missing field isVisible in getAutocompleteDefinition fn
Added cypress test

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

## Summary by CodeRabbit

- **New Features**
- Enhanced autocomplete functionality in the JSONForm Widget to include
the `isVisible` property.

- **Tests**
- Added a new test case to verify object properties in the autocomplete
list for the `isVisible` field in the JSONForm Widget.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-17 10:54:23 +05:30