Commit Graph

336 Commits

Author SHA1 Message Date
Jacques Ikot
cda656bab3
feat: add alignment property in style pane for table button cell (#38223)
## Description
**Problem**
When a user uses the button column type in a table widget, the button is
automatically aligned to the left, and the style tab of the button
property pane does not allow the user change the vertical or horizontal
alignment of the button column.

**Solution**
We have added the Alignment property to the button column type for the
table widget, and added tests.


Fixes #38032 

## Automation

/ok-to-test tags="@tag.Table, @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/12417408061>
> Commit: 07f2eb0795e04e37ed077a850bc9b87166ea549d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12417408061&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Widget, @tag.Binding`
> Spec:
> <hr>Thu, 19 Dec 2024 18:44: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**
- Added a test suite for validating button cell functionality in the
Table Widget V2.
- Introduced a method to generate CSS selectors for specific table
cells.
  
- **Bug Fixes**
- Enhanced visibility controls for alignment properties based on column
types, particularly for button cells.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-24 07:18:56 +01:00
Sagar Khalasi
a5fa2aa7a1
test: new test cases framework functions and Action selector (#37566)
## Description
E2E Test cases for framework function & Action selector.

Fixes [Issue
URL](https://app.zenhub.com/workspaces/stability-pod-6690c4814e31602e25cab7fd/issues/gh/appsmithorg/appsmith/37370)

## 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/12343756587>
> Commit: 56f7a2eb2acee62237f9dcd395b6a618956e38a2
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12343756587&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 16 Dec 2024 03:08:25 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 property pane with new button widget identification.
	- New selectors for action cards and toast notifications.
	- Improved modal interaction with new properties for buttons.
	- Added functionality for toggling JavaScript execution on page load.
	- New methods for character manipulation and console log management.
	- Comprehensive application configurations for interval management.
- New applications and widgets for managing intervals and clipboard
functionality.
- New functionality for resetting widgets and handling navigation
actions.
	- Introduction of new JSON configurations for various applications.

- **Bug Fixes**
	- Improved error handling for various actions and functions.

- **Tests**
- Extensive test coverage for new and existing functionalities,
including action selectors, interval functions, alert handling, and
geolocation features.
- New tests for clipboard functionality, download actions, and local
storage operations.
- Enhanced tests for Radio and CategorySlider widgets to improve
validation of JavaScript context and error handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: yatinappsmith <yatin@appsmith.com>
2024-12-16 16:41:54 +05:30
Rahul Barwal
3610bae834
feat: Implements HTML as a column type in table widget. (#37997) 2024-12-11 13:07:30 +05:30
Sagar Khalasi
ab0628839b
fix: Fix iframe and widget test case for clicking (#38039)
## 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

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

### 🔍 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/12236274208>
> Commit: 7bd2b6a3d6cb68b9e0eeeccdb0c52b60113a4515
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12236274208&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Iframe`
> Spec:
> <hr>Mon, 09 Dec 2024 13:30:29 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 the Iframe widget test by ensuring button clicks can proceed
under all conditions.
- Enhanced entity context management during URL property updates in
tests.

- **Tests**
- Updated test specification to include the Iframe widget test,
replacing the previous fork template entry.
- Adjusted visibility assertion to use conditional waits in the Iframe
widget tests.

- **Style**
- Modified CSS selector spacing in the CommonLocators to improve element
targeting.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-09 19:00:43 +05:30
Sagar Khalasi
39877bdb66
fix: Fix flaky test case for the iframe spec (#38018)
## Description
Re-wrote new test case.


Fixes #
https://app.zenhub.com/workspaces/stability-pod-6690c4814e31602e25cab7fd/issues/gh/appsmithorg/appsmith/38017

## Automation

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

### 🔍 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/12197419550>
> Commit: 5b0d7ad0a92123b412cb18c7b1814548f51e6ac4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12197419550&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Iframe`
> Spec:
> <hr>Fri, 06 Dec 2024 11:07: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

## Release Notes

- **New Features**
- Enhanced testing suite for the Iframe widget, allowing for more
specific interactions with multiple iframe instances.
- Added a new test case to verify iframe behavior during property
updates.

- **Bug Fixes**
- Updated iframe URL configurations to ensure correct redirection to the
new documentation site.

- **Documentation**
- Introduced a new JSON structure for the Iframe widget, detailing
properties and settings for improved user interaction.

- **Chores**
- Updated test specification paths to focus on the Iframe widget tests.
  - Modified common locators for improved navigation element targeting.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-06 17:11:17 +05:30
albinAppsmith
46786ae003
feat: Enable new toolbar for cypress (#37148)
## Description

This PR enabled IDE toolbar for cypress.

Fixes #37217

## 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/12115693818>
> Commit: f2af8705e91af400b3a80f6684cce7fb487f1ca3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12115693818&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 02 Dec 2024 12:19:38 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**
- Introduced a new feature flag `release_actions_redesign_enabled` to
enhance user experience.
- **Bug Fixes**
- Updated method calls in various test cases to improve consistency and
reliability in interactions, specifically renaming methods related to
data sources and queries.
- Improved error handling and validation in tests for MongoDB query
functionalities.
- **Documentation**
- Enhanced test coverage and assertions for various functionalities,
including API actions, Google Sheets queries, and JavaScript function
execution.
- **Style**
- Updated CSS selectors for improved consistency and maintainability
across components and test cases.
- **Tests**
- Refactored multiple test cases to utilize new helper methods,
improving code clarity and reducing direct DOM manipulation.
- Enhanced visual tests for JSEditor and improved interaction with the
run button.
- Added new assertions and enhanced the structure of tests for various
components, including API response handling and widget interactions.
- Streamlined interaction with the settings toolbar in various test
cases by encapsulating functionality within the `PluginActionForm`
class.
- Introduced new `data-testid` attributes across various components to
enhance testability.
- **Chores**
- Removed unused imports and streamlined method calls for better
performance and readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-12-03 09:21:43 +05:30
Rahul Barwal
0288f5b9ef
fix: Enhance URL handling in table by rendering URL column types with <a> tag. (#37179)
## Description
<ins>Problem</ins>

URLs in table were not being rendered as links, resulting in
inconsistent user experience(missing context menus.

<ins>Root cause</ins>

URLs were rendered in `<div>` instead of `<a>`, making the component
lack links related features..

<ins>Solution</ins>

This PR handles... 

- Rendering URLs as links in BasicCell for a better user experience.
- Adding specific types for column properties for more robust data
validation and type checking.
- Adding unit tests for BasicCell functionality to ensure accurate
rendering and behavior.

- Simplifies the AutoToolTipComponent by removing unncessary
`LinkWrapper` component


Fixes #24769
_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  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11681339029>
> Commit: b7c5d176b35407923a120bb19e40252e3a61b628
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11681339029&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Tue, 05 Nov 2024 10:23:38 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

## Release Notes

- **New Features**
- Enhanced type safety for `compactMode` and `columnType` properties
across various components.
- Improved rendering logic in the `AutoToolTipComponent` for better
control based on `columnType`.
	- Optimized rendering in the `BasicCell` component using `useMemo`.

- **Bug Fixes**
- Resolved inconsistencies in type definitions for `BasicCell`,
`PlainTextCell`, and `SelectCell` components.
- Updated tooltip behavior in the `AutoToolTipComponent` to ensure
accurate rendering.

- **Tests**
- Introduced a new test suite for the `BasicCell` component, ensuring
proper rendering and interaction behaviors.
- Refined test cases for the `AutoToolTipComponent` to verify accurate
rendering under various conditions.
- Updated test case for URL column verification to check attributes
directly instead of navigation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-06 10:27:57 +05:30
NandanAnantharamu
0b2cffb3b7
test: fixed datepicker skipped tests set 2 (#37126)
Updated common method to suite both v1 and v2
Skipped test updated
locator change handled

EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5477
/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/11677761197>
> Commit: 56ecbce50bef806998c83ffe585482a32eff120b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11677761197&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 05 Nov 2024 06:59:10 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 date selection process in DatePicker widget with improved
test interactions.
- Introduced a new structured JSON layout for the user interface,
including multiple interactive widgets.

- **Bug Fixes**
- Activated previously skipped tests to ensure comprehensive validation
of DatePicker functionality.

- **Documentation**
- Updated locators for form widgets to improve selector accuracy and
functionality.

- **Chores**
- Refined various Cypress commands related to widget interactions for
better reliability and performance.

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

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-11-05 17:11:02 +05:30
Vemparala Surya Vamsi
c8943509a0
chore: improved performance of getUnevaluatedDataTree (#37189)
## Description
Refactored getUnevaluatedDataTree selector to be more resilient to state
changes thereby reselect cache gets triggered less often. Identified an
action which was firing the selectors unnecessarily, fixed that as well.
For our customer during page load it used to take about 800ms
cumulatively, it has now dropped to about 160ms by about 80%. This is
also an impactful selector which cumulatively takes about 50,000 seconds
for all our client systems per week, hence we focussed our optimisation
here

## 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/11658078700>
> Commit: 557172d47b2232800355e1dc78c921d9cb56c725
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11658078700&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 04 Nov 2024 06:00: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

## Summary by CodeRabbit

- **Bug Fixes**
- Improved state management by preventing unnecessary updates to loading
entities, enhancing app performance.

- **Refactor**
- Updated the `loadingEntitiesReducer` to include an equality check for
loading entities before state updates.
- Enhanced date handling capabilities in the DatePicker widget tests and
commands.
- Restructured the `DataTreeFactory` class for improved modularity and
clarity in data tree creation.
- Simplified selector functions for better readability and
maintainability in data tree selectors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-04 16:03:03 +05:30
Anas Khafaga
2cfe0b0fac
fix(#16584): filterTableData source of truth (#36849)
## Description
> **TL;DR**: This PR addresses is related to #16584 where editing a
table row with applied filters becomes impossible without clearing the
filters

When a filter is applied to the table data, the current behavior results
in filter updates without validating or saving the updated value of the
row being edited. This leads to a situation where users are unable to
save or discard changes until the filters are cleared. The proposed fix
ensures that the original row is retrieved from the table data and used
in filtering, allowing editing and filtering to work as expected.

Here's a [screen
record](https://drive.google.com/file/d/1JuP_UN_B1vzz_oMeR1ojjPscF_mB3A4x/view?usp=sharing)
for the solution

### Motivation:
The problem arises in scenarios where table rows are editable and
filters are applied. This change ensures that users can continue editing
table rows without being forced to clear filters first.

### Context:
This change is required to improve user experience and fix the broken
editing functionality when filters are active. The change ensures that
editable values in filtered rows are correctly handled and saved.

Fixes https://www.loom.com/share/335d0c61817646a0903d581adf73064e

## Automation

/ok-to-test tags="table-widget,filter,edit"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]  
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.

<!-- 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**
- Improved filtering accuracy in the TableWidgetV2 by using original row
data for evaluations.

- **Bug Fixes**
- Enhanced functionality to ensure that filtering conditions are
evaluated correctly with original data.

- **Tests**
- Added new test cases to validate filtering functionality after edits
in the TableWidgetV2.
- Expanded test coverage for checkbox and switch interactions to ensure
accurate filtering behavior, including new interactions with a discard
button.

- **Style**
	- Minor adjustments to comments and formatting for better readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-30 17:33:01 +05:30
Jacques Ikot
64f1342a40
feat: remove release_table_cell_label_value_enabled feature flag (#37110)
## Description
Removes the `release_table_cell_label_value_enabled` feature flag from
the codebase.

This feature flag helped us launch the tables ability to show labels
instead of values for select column types. It has been in production for
over 2 months with no bug or unexpected behaviours reported, warranting
a removal of the feature flag from the codebase.


Fixes #37109 

## Automation

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

### 🔍 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/11550654098>
> Commit: d225470d767c441c1b9e07d79e59e5f052339198
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11550654098&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Sanity, @tag.Select`
> Spec:
> <hr>Mon, 28 Oct 2024 09:57:21 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 `SelectCell` component for improved label value
determination.
  
- **Bug Fixes**
- Removed unnecessary complexity related to feature flag checks,
resulting in a more reliable display of cell labels.
  
- **Tests**
- Updated test cases for table filtering and sorting functionalities,
removing feature flag dependencies while maintaining core logic.
- Enhanced test coverage for select column functionality, including
dynamic bindings and server-side filtering checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-28 18:42:06 +01:00
Valera Melnikov
5da5a1e507
chore: chore: add SVGR to appsmith-icon package, add processing for custom icons, update date-fns (#37115)
## Description
- chore: add SVGR to appsmith-icon package
- add processing for custom icons
- update date-fns

Changes are necessary for [this EE
PR](https://github.com/appsmithorg/appsmith-ee/pull/5448).

## 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/11551127644>
> Commit: 44fd968044ad5a5ca173c565b3b0c1d6f030cd1e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11551127644&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 28 Oct 2024 10:11:55 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

## Release Notes

- **New Features**
- Introduced `AIAvatarCustomIcon` component for enhanced icon
customization.
- Added `CustomIcons` documentation in Storybook for better visibility
of custom icons.

- **Improvements**
- Updated multiple icon components to accept SVG properties, enhancing
flexibility and reusability.
- Enhanced type safety for `IconCmp` and `ThumbnailCmp` properties
across various interfaces.
- Expanded functionality in the `generateStories` function to include
stories for custom icons.

- **Chores**
- Improved import statements and export structures for better code
organization.
- Extended cleanup functionality to ensure directories are properly
managed.
- Modified the `generateComponents` function to utilize a more robust
SVG-to-React transformation process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-28 14:55:42 +03:00
NandanAnantharamu
437f689878
test: fix datepicker tests (#37042)
EE PR:https://github.com/appsmithorg/appsmith-ee/pull/5438

Updated SetDate method as the older method was not working anymore

/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/11512762742>
> Commit: 1e0ec01036959df5289b6d131f804166a7775e8f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11512762742&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 25 Oct 2024 08:22:21 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-10-26 19:29:01 +05:30
NandanAnantharamu
602fe2b8a1
test: fix tabs skipped test CE (#37023)
[NandanAnantharamu](https://github.com/NandanAnantharamu)
NandanAnantharamu commented [1 hour
ago](https://github.com/appsmithorg/appsmith-ee/pull/5425#issue-2607459836)
•
Skipped test in Tab spec is fixed.
There was change in one of the validation step
/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/11504174102>
> Commit: 6b0e6077236862ebd92ee9d121622a4b4af46063
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11504174102&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 24 Oct 2024 17:52:38 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

- **Bug Fixes**
- Re-enabled test case for verifying colors, borders, and shadows of the
Tabs widget.
- Updated border color assertion to dynamically check the widget's
border color.

- **Improvements**
- Enhanced verification of property visibility and functionality for the
Tabs widget, including tab renaming, deletion, and binding with text
widgets.
- Validated behavior when toggling the "Show Tabs" property and ensured
appropriate error handling for invalid default tabs.

- **Chores**
- Updated the test file reference in the limited-tests configuration to
focus on the Tabs widget.
- Introduced new selectors for improved interaction with widget
properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-10-25 21:21:57 +05:30
Sagar Khalasi
a29f9cadee
chore: Addding dependent tags (#36965)
## Description
It is for increasing test coverage with tags


Fixes #`36929`  

## 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/11399781852>
> Commit: 9f238070acaf07cb674cb5e1cdd0171e2d671bb3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11399781852&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 18 Oct 2024 09:35:03 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-10-18 18:19:08 +05:30
Rahul Barwal
9719e9238c
chore: Update tinymce version to 6.8.3 in package.json and yarn.lock (#36909)
## Description

TinyMCE initially switched from LGPL to MIT in 2022, aiming for a more
permissive license. However, it reverted to GPL v2+ for version 7, which
is a concern for us.

TinyMCE 6.8.3 under the MIT license until October 31, 2024, it will stop
receiving any security updates post that.


Fixes #36859
_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.TextEditor"

### 🔍 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/11379278624>
> Commit: 8aa96b6100642663f39e275b370582397e11a6a4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11379278624&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.TextEditor`
> Spec:
> <hr>Thu, 17 Oct 2024 06:29:32 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-10-17 12:18:14 +05:30
Jacques Ikot
9041c48b77
test: hard code date values in Date_column_types_validation_spec (#36759)
## Description
**Problem**
In the test spec, date data is fed directly from a file
`(app/client/cypress/fixtures/tableDateColumnTypes.ts)`, which includes
specific, static dates. However, the test is designed to handle relative
dates (e.g., "today" and "tomorrow"). As a result, when the date picker
opens, it displays a fixed date (e.g., September 2024), while the test
is attempting to select a date like October 8 (tomorrow’s date), which
is out of view.

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


Fixes #36756

## Automation

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

### 🔍 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/11270917513>
> Commit: 9ac8789c2c00838cef45fcc1ad712e1afc419942
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11270917513&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Thu, 10 Oct 2024 09:53:10 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**
- Enhanced clarity and specificity in end-to-end tests for date column
validation in the table widget.
- Updated assertions to directly compare against a specific hardcoded
date.

- **Refactor**
- Removed the `getFormattedTomorrowDates` method from the Table class,
streamlining date formatting functionality.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-10 11:35:15 +01:00
Jacques Ikot
d233d7e9c3
feat: Allow filtering of table select column label (#36755)
## Description

**Problem**
When filtering a table with a select column type, users expect to filter
by the visible label values shown in each cell. Currently, however,
filtering is applied to the underlying option values rather than the
displayed labels, leading to unexpected filter results for end-users.

**Root Cause**
In a previous update ([PR
#35124](https://github.com/appsmithorg/appsmith/pull/35124)), the table
cell display for select columns was changed to show labels instead of
values. However, the filtering logic was not updated accordingly, so the
table still filtered on the original option values, creating a mismatch
between displayed and filtered content.

**Solution**
This PR modifies the displayedRow property within the table widget to
use the label property instead of the value key when filtering or
searching select column data. This ensures that table filtering and
searching now align with the visible label values in the select columns,
providing a more intuitive user experience.


Fixes #36635 

## Automation

/ok-to-test tags="@tag.Sanity, @tag.Table, @tag.Select, @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/11234735437>
> Commit: fd6c179ffb2c61d23cb98fd749c8df49cebcfcdd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11234735437&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Table, @tag.Select, @tag.Binding`
> Spec:
> <hr>Tue, 08 Oct 2024 12:48:01 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 a new test case to verify filtering functionality for the
"role" column in the Table Widget.
- Enhanced filtering mechanism to support multiple label values for
select columns.

- **Bug Fixes**
	- Removed outdated search functionality to streamline user experience.

- **Refactor**
	- Restructured existing test cases for improved clarity and flow.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-09 09:09:12 +01:00
Aman Agarwal
56e7f89402
chore: removed old flags for airgap instances (#36609)
## Description
Removed all the occurrences of listed flags in the codebase:

1. ab_ds_binding_enabled
2. ab_ds_schema_enabled
3. ab_gsheet_schema_enabled
4. ab_learnability_discoverability_collapse_all_except_data_enabled
5. ab_learnability_ease_of_initial_use_enabled
6. ab_mock_mongo_schema_enabled
7. ab_start_with_data_default_enabled
8. rollout_js_enabled_one_click_binding_enabled


Fixes #36256
_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/11177173738>
> Commit: bfbf6bbe77b963c5d257c29cf5bac35139417a07
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11177173738&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 04 Oct 2024 10:31:10 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 test coverage for the Community Issues page, focusing on
pagination, search, filtering, and issue management.
- Improved functionality for adding new rows to table widgets, including
visibility controls and state validations.

- **Bug Fixes**
- Resolved issues related to the visibility of UI elements when adding
new rows and ensured accurate data reflection in the table.

- **Tests**
- Expanded tests for pagination, row selection, search functionality,
and filtering logic in table widgets.
- Added comprehensive assertions for client-side search and filtering
scenarios, including checks for modal visibility during issue
management.

- **Chores**
- Removed obsolete feature flags and streamlined logic for managing
feature flags across components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-07 15:26:25 +05:30
Rahul Barwal
3ff67d31a6
test: Update Inline_editing_3_spec.js to include expected JSON parsing (#36721)
## Description
<ins>Root cause</ins>
This spec was failing because it was string comparing the values,
whereas the source was a JS Object. This sometimes caused spec to fail.

<ins>Solution</ins>
This pull request updates the `Inline_editing_3_spec.js` file to include
the expected JSON parsing. The changes ensure that the correct JSON
parsing is performed when editing a table cell and saving the changes.

Fixes #36720
_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  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11211620961>
> Commit: 0cf810ba36f9947f9aff6c85c6c8d64bc7f1dbf3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11211620961&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Mon, 07 Oct 2024 09:27:17 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 validation for inline editing functionality in table widget
tests.
- Enhanced assertions for save/discard operations to ensure accuracy
after changes.
	- Added checks for various column types in the `onsubmit` event tests.

- **Tests**
- Expanded end-to-end tests for inline editing, ensuring thorough
validation across scenarios.
- Incorporated additional checks for the display and retention of values
during editing operations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-07 15:01:10 +05:30
Sagar Khalasi
c0f7fa7baf
chore: Updated another set of third party urls (#36571)
## Description
Updated third party URLs.

Fixes `[Issue
URL](https://github.com/appsmithorg/appsmith/issues/36437)`


## 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/11174864458>
> Commit: c6432d4363f80513aae2d55310e5905dc83d0acc
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11174864458&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 04 Oct 2024 07:58:04 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**
- Enhanced fetch tests to ensure proper handling of requests and
responses.
- Corrected expected outputs for URL and date formats in the Table
Widget tests.
- Simplified validation logic for unsupported file types in the Document
Viewer tests.

- **Chores**
- Modified test cases to utilize local mock APIs for enhanced testing
reliability.
	- Updated image URLs in fixture data to reflect new local sources.
- Adjusted default images for widgets to ensure consistent visual
representation.
- Improved interactivity in modal widget tests with updated actions and
dynamic data binding.
- Updated limited tests to focus on server-side JavaScript function
execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-04 15:06:56 +05:30
Sagar Khalasi
177636d43a
chore: Updated doc urls (#36634)
## Description
Updated third party URLs.


Fixes #`36437`  

## Automation

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

### 🔍 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/11125143689>
> Commit: 7d19fcce57eb2183d6e261feaa772d20d6fafa10
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11125143689&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.DocumentViewer`
> Spec:
> <hr>Tue, 01 Oct 2024 12:45:03 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**
- Updated document link URLs for testing to ensure accurate
functionality in the DocumentViewer widget.
  
- **Tests**
- Maintained and validated tests for various document types, ensuring
correct rendering and handling of different file formats.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-03 11:51:25 +05:30
albinAppsmith
4f501419cd
fix: Revert "feat: allow multiple lines in alert component" (#36643)
Reverts appsmithorg/appsmith#36629
Reverts appsmithorg/appsmith#36126

Reverting this PR since it is causing multiple issues in toast and we
are reverting the original PR caused this issue.

## 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/11138591480>
> Commit: 598a1d3c6e94fc817c1bc75293b60936a422f77c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11138591480&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 02 Oct 2024 07:27:39 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**
- Introduced a new styled button component for enhanced toast
notifications.
- Updated toast styling with customizable properties for better visual
presentation.
- **Bug Fixes**
- Simplified toast body structure by removing unnecessary components,
ensuring content displays correctly.
- **Chores**
- Removed outdated end-to-end test file for button widget alert
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-02 12:58:16 +05:30
NandanAnantharamu
241dfa8f33
test: replaced 3rd party apit in treeSelect (#36598)
Replaced 3rd Party API with TED
/ok-to-test tags="@tag.Select"



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

---------

Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
2024-10-01 16:05:40 +05:30
saiprabhu-dandanayak
a6c109b3ba
feat: allow multiple lines in alert component (#36126)
### Description
 
### Fixes :
[#30851](https://github.com/appsmithorg/appsmith/issues/30851)

I have raised this pr in-order to allow multiple lines in alert message

### Screenshots

### passing `\n` in the message
![Screenshot from 2024-09-05
13-51-43](https://github.com/user-attachments/assets/02f5fe58-44a6-40e1-a366-c909018e4417)

### unable to parse `\n`
![Screenshot from 2024-09-05
13-50-06](https://github.com/user-attachments/assets/e5fe1d14-4c80-4c5d-8f67-350788d8d84c)

### After issue is resolved
![Screenshot from 2024-09-05
13-55-01](https://github.com/user-attachments/assets/05c8477c-d593-4b5e-9de0-9b6867234c3f)

### Cypress Testing video


https://github.com/user-attachments/assets/ec826cef-664f-4392-b81e-9974178e65ec







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

- **New Features**
- Introduced a new styled component `StyledPre` for enhanced formatting
in toast notifications.
- Enhanced the Toast component to better render content, improving
readability by preserving whitespace and formatting.
- Added automated tests for the button widget's alert functionality,
ensuring correct display of messages with newline characters.

- **Bug Fixes**
- Improved the display of alert messages in toast notifications,
ensuring they respect original formatting.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-30 11:15:51 +01:00
Jacques Ikot
6f27959bce
fix: Invalid Date Display in Table Widget's Date Column When Using Unix Timestamp (ms) (#36455)
## Description

**Problem**
When populating a table widget with data that includes dates in Unix
timestamp (milliseconds) format, setting the column type to "Date," the
input format to "Unix timestamp (ms)," and selecting a display format
leads to an issue during inline editing. While the date picker behaves
correctly, selecting a new date results in the table cell showing an
"Invalid Date" error.

**Root Cause**
The platform currently uses DateInputFormat.MILLISECONDS for Unix
timestamp (ms) formatting. However, this value is not a valid option for
the moment.format() function, which expects the input format to be 'x'
for Unix timestamps in milliseconds. This mismatch leads to the "Invalid
Date" error.

**Solution**
Modify the logic to map DateInputFormat.MILLISECONDS to the correct
moment format string 'x'.
Adjust the table's transformDataPureFn to correctly process and display
dates in Unix timestamp (ms) format after inline edits, ensuring the
moment library can handle the input properly.

**Outcome**
This fix ensures that when a user selects a date via the date picker in
inline editing mode, the selected date is displayed correctly in the
table without any errors.


Fixes #35631, #25081

## Automation

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

### 🔍 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/11101758400>
> Commit: 6a3cae774f3824bd2ee126b501bfa4b6d71ae0c8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11101758400&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Binding, @tag.Table, @tag.Datepicker`
> Spec:
> <hr>Mon, 30 Sep 2024 08:54:58 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 date column editing in table widgets to accept Unix
timestamps in milliseconds without errors.
	- Introduced a new enumeration for improved date formatting options.
- Added mock data structures for testing various date formats and
transformations in the table widget.
- New method for generating formatted date strings for tomorrow in both
verbose and ISO formats.

- **Bug Fixes**
- Improved validation logic for date inputs in the table, ensuring
proper handling of different date formats.

- **Tests**
- Added new test cases to validate date handling and input formats in
the table widget.
- Introduced a new test suite for transforming table data based on
specified column metadata.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-30 10:02:42 +01:00
Sagar Khalasi
73169d13b0
chore: Replacing ted api call for resources (#36472)
## Description
Remove third party url. 

Fixes `https://github.com/appsmithorg/appsmith/issues/36535`

## 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/11031926377>
> Commit: bf5f2950598b16f4eadda81c1076d0c504e90be1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11031926377&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 25 Sep 2024 12:37:04 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**
- Updated various image and URL references in test configurations to
point to local resources instead of external links, improving
consistency and performance during testing.

- **Bug Fixes**
- Corrected image source URLs in multiple test files to ensure proper
loading of images in the application.

- **Chores**
- Replaced outdated URLs with local Docker host URLs across numerous
test files and configurations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-25 19:41:00 +05:30
Jacques Ikot
8fe96c9c20
fix: isRequired validation property for table select column (#36375)
## Description

**Problem**
The select column of the table widget does not have a validation
property within its property pane to allow users add an isRequired
validation to the table select column.

**Solution**
Added a Validation section to the table select column's property pane,
which includes an isRequired toggle. When enabled, this feature will
trigger a visual indication (error border colour) around the select
widget if a required field is left unselected during "Add new row" or
inline editing.


Fixes #30091 

## Automation

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

### 🔍 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/10957896180>
> Commit: d2597e6a26938f2b99f2f997fca7bc110e5c2091
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10957896180&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.Table, @tag.Binding, @tag.Sanity,
@tag.Select`
> Spec:
> <hr>Fri, 20 Sep 2024 12:23:29 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**
- Introduced end-to-end tests for Select column validation in Table
widgets.
- Enhanced validation logic to support Select column types in the Table
widget.
- Added visual feedback for required Select fields during row addition
and inline editing.
- Improved locator for single-select widget button control to enhance UI
interaction.

- **Bug Fixes**
- Improved error handling and visual representation for invalid editable
Select cells.

- **Documentation**
- Updated validation configuration to include Select column types for
better usability.

- **Refactor**
	- Enhanced code clarity for styled components related to Select fields.
- Modified method to improve versatility in handling table interactions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Sai Charan <saicharan.chetpelly@zemosolabs.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-09-23 08:44:46 +01:00
Sagar Khalasi
1cf043c40a
fix: Inline editing flaky test fix (#36366)
## Description

EE PR: [Appsmith EE Pull Request
#5158](https://github.com/appsmithorg/appsmith-ee/pull/5158)

Root Cause Analysis (RCA):
The `updateCodeInput` function was identified as a source of flakiness
due to improper execution. Additionally, the `SaveLocalStorageCache`
caused issues by retaining the reset button after the 6th test case,
resulting in a duplicate button in the 7th test case, which led to test
failures.

Solution:
Replaced `updateCodeInput` with `EnterJSContext` from `agHelper` for
more reliable execution. For the second flaky step, a new page was
created, and a table with relevant data was added. This resolved the
issue without requiring significant changes to the test case or
workflow.

Fixes #`36365`  

## 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/10940196158>
> Commit: 32d1be4c3dfe54bf8a0f8e9f54b20d2845c86407
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10940196158&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.ImportExport`
> Spec:
> <hr>Thu, 19 Sep 2024 12:01:32 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**
- Adjusted the inline editing test suite for the table widget to improve
state management between tests.

- **New Features**
- Updated the limited tests to focus on inline editing functionality,
enhancing testing priorities for the Table V2 widget.
- Introduced new properties in the widget locators to enhance UI
interactions, including selectors for various controls and elements
within the property pane and cell editing functionalities.
- Added a new JavaScript toggle selector to facilitate interactions in
tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-20 12:44:14 +05:30
Rahul Barwal
6507f90e05
fix: Incorrect updation of selctedRowIndex when primary column is set. (#36393)
## Description
<ins> Problem statement </ins>
1. Table should have a primary column set.
2. The table should be filtered(via search or client side filters)
3. there should be a selectedRow in table
a. One way to ensure is add a text widget and bind it to table's
`selectedRowIndex` property.

If you now run a query that updates the data behind the table: the
`selectedRow` is updated to (seemingly) random row and selectedRowIndex
is updated as well

<ins> Rootcause </ins>
We have a mechanism of preserving `selectedRow` when data updates
happen.
Underlying logic gets the previous selected row and tries to find it in
the new data using the primary key.
* If it finds it, it updates the selectedRowIndex to the
`__original_index__` of the found row i.e. its position in the original
data before any filters were applied.

<ins> Solution </ins>
We update the selectedRowIndex to the index in the new filtered data.

<ins> How to test </ins>
1. Create a table with a primary key
2. Add a text widget and bind it to table's `selectedRowIndex` property
3. Filter the table
4. Click on a row to select it
5. Run a query that updates the data behind the table
6. Assert that the selected row is the same and that the
selectedRowIndex is updated to the new index


Fixes #36080
_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, @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/10953679202>
> Commit: 1a2d64467e453229940b67b29da1ce9d0e9ac24d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10953679202&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Sanity`
> Spec:
> <hr>Fri, 20 Sep 2024 06:30:08 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

- **Improvements**
- Enhanced the efficiency of the TableWidgetV2 by streamlining the
method for retrieving the index of selected rows.
- Improved code readability and maintainability without altering the
overall functionality.

- **New Features**
- Introduced new test cases to validate filtering and searching
functionalities within the Table Widget V2.
- Added a JSON configuration for a data-driven table interface,
supporting sorting, filtering, and dynamic data binding.
- Introduced fixture data for testing, allowing for comprehensive
validation of table behavior under various conditions.
- Added a JavaScript object containing employee data to facilitate
filtering and display in the table.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-20 12:25:23 +05:30
Sagar Khalasi
9e7fa1d725
chore: Added sanity and tags for blank tag specs (#36421)
## Description
Added relevant tags with sanity tags.

Fixes `https://github.com/appsmithorg/appsmith/issues/36415`

## 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/10938122144>
> Commit: 8383cf735da821760853af77f232b5c992904a19
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10938122144&attempt=4"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 19 Sep 2024 11:41:23 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 test suites with additional `@tag.Sanity` tags for improved
categorization and organization.
	
- **Bug Fixes**
- Updated various test suite tags to include `@tag.Sanity`, ensuring
comprehensive coverage of functionalities.

- **Documentation**
- Improved tagging structure across multiple test suites for better
clarity and maintainability.

- **Chores**
- General modifications to existing test suite descriptors to include
new tags without altering core functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-19 18:21:58 +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
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
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
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
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
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
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
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