## Description
Upgrade S3 plugin config to new format using SECTION_V2,
SINGLE_COLUMN_ZONE, and DOUBLE_COLUMN_ZONE.
Fixes#35484
## 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/10720588484>
> Commit: c66dce69902ae247b6444ff901fe2cf1595e8e34
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10720588484&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 05 Sep 2024 15:04:31 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 sorting control with improved performance and
maintainability.
- New configuration option for specifying the expiration duration of
signed URLs in the Amazon S3 plugin.
- Updated UI layout for various actions (upload, delete, read) in the
Amazon S3 plugin to improve organization and user experience.
- Clarified labeling and structure in the Amazon S3 plugin for better
user interaction.
- **Bug Fixes**
- Streamlined logic for adding and deleting sorting fields in the
sorting component.
- **Documentation**
- Updated control types and structure in the Amazon S3 plugin
configuration for clarity and usability.
- **Style**
- Improved responsiveness of the sorting control layout and Amazon S3
plugin UI.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Hi @appsmithorg/contributor-support, @rohan-arthur, @nidhi-nair
Fixes#19723
**What’s in this PR:**
1. In Postgres Plugin:
- Added two imports: PSQLException and PSQLState to identify the type of
exception and state of error.
- Added a condition to validate the empty port field.
- Removed the default port when the port is empty.
- Removed “Failed to initialize pool:” term in the error message.
2. In PostgresErrorMessages
- Added two constant value for Missing port and invalid host and port.
3. In PostgresPluginTest
- Added a test case to validate the missing port error message.
**Screenshots :**
1. If any of the field like host address, port, DB name etc is wrong -
There is a term in the error message along with the error message in the
toast "Failed to initialize pool: ". This is not required. - Fixed

2. If host address or port is wrong, there is no reference of that in
the error message. - Fixed

3. There is no error message when the port number is left empty. - Fixed

**Test cases :**

**Why I didn’t provide test cases for invalid host and port :**
Those errors are triggered by the createConnectionPool method, which is
private, so we can’t access it in the test file.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved validation for PostgreSQL datasource configurations, ensuring
that a port is specified.
- Enhanced error messaging for connection issues related to missing or
invalid port and hostname.
- **Bug Fixes**
- Refined error handling during connection pool initialization for
clearer feedback on specific connection issues.
- **Tests**
- Added a test to validate behavior when the datasource configuration
has an empty port, improving coverage for validation logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Reverts appsmithorg/appsmith#36053
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved formatting of error messages for invalid data sources to
enhance clarity.
- Simplified error handling in the Postgres plugin, which may affect the
specificity of connection error messages.
- Removed an outdated error message related to invalid hostname and port
configurations in the Postgres plugin, impacting how related errors are
reported to users.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Shadow PR for https://github.com/appsmithorg/appsmith/pull/35167
Fixes #
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/test 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/10769007798>
> Commit: 3c97f02af5401c84760425557b479b1cff13fdac
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10769007798&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 09 Sep 2024 10:29:27 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 error handling for PostgreSQL connection issues with clearer
messages for missing ports and invalid hostnames.
- Improved readability of error messages in the application by
formatting them to display on separate lines.
- **Bug Fixes**
- Improved clarity in error reporting for connection pool creation
failures.
- **Tests**
- Introduced a test case to validate datasource configuration when the
port is not provided, ensuring robust validation checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: AnnaHariprasad5123 <hariprasad.anna@zemosolabs.com>
## Description
https://theappsmith.slack.com/archives/C025SE88KNE/p1725434811592439
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.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/10772310432>
> Commit: 3afce8dcc618f3318cfff59fa3940f398091cdd1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10772310432&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 09 Sep 2024 12:43:13 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 enhanced validation for options in the WDSComboBoxWidget,
ensuring all entries are valid objects with `label` and `value`
properties.
- Updated WDSSelectWidget to include validation for the options array,
ensuring only valid items are processed.
- **Bug Fixes**
- Removed outdated validation methods and configurations in
WDSSelectWidget for a more streamlined approach.
- **Refactor**
- Simplified the configuration and validation logic within the
WDSSelectWidget, improving maintainability and clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Uses `AnimatedGridLayout` component to introduce transitions for the
IDE. This is behind a feature flag
Fixes#34538Fixes#30863Fixes#34544
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10737363879>
> Commit: a912f5c52366abe48768727a1c605cd72b48752c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10737363879&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ServerSide/OnLoadTests/ExecuteAction_Spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Fri, 06 Sep 2024 16:32:30 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced two new layout components: `AnimatedLayout` and
`UnanimatedLayout` for improved editor interface structuring.
- Added TypeScript type definitions for the DOM View Transitions API to
enhance type safety and developer experience.
- Implemented custom hooks, `useGridLayoutTemplate` and
`useEditorStateLeftPaneWidth`, for dynamic grid management and left pane
width calculation in the IDE layout.
- **Improvements**
- Enhanced layout responsiveness with the addition of dynamic grid
management.
- Updated the `Editor` component to use a centralized constant for
height calculations, improving maintainability and consistency.
- Enhanced test accuracy by refining assertions in the Git Branch
Protection test suite.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Sagar Khalasi <sagar@appsmith.com>
## Description
- Added ComboBox wds component. It is partly unstyled. It will be fixed
in upcoming PRs
- Added ComboBox widget
Fixes#36015
> [!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/10718261812>
> Commit: b13c79c63b809bfdb281dc74a7eaac028ece56a5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10718261812&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 05 Sep 2024 11:36:28 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced a customizable and accessible ComboBox component for item
selection.
- Added support for loading states, validation, and contextual help
within the ComboBox.
- Integrated new configuration options for widget behavior and
appearance.
- Enhanced metadata for the ComboBox, including search tags for improved
discoverability.
- Added new icon and thumbnail components for ComboBox representation.
- **Bug Fixes**
- Enhanced validation logic to ensure proper input formatting for
ComboBox options.
- **Documentation**
- Added Storybook stories to demonstrate various ComboBox states and
functionalities.
- **Style**
- Implemented a comprehensive CSS module for consistent styling of the
ComboBox component.
- **Chores**
- Updated widget mapping to include the new ComboBox widget in the
application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Vadim Vaitenko <vadim@appsmith.com>
## Description
This PR introduces a couple of improvements to the actions part of the
consolidated view API.
- With current implementation, we call consolidated view API only once
during page load and fetch all of the resources at once. This can be a
problem for a heavy app which has more than 500 actions, in this case
fetching all published actions takes a sizeable amount of time. This PR
introduces an improvement where we don't fetch all actions of an
application at once, instead we fetch all actions of the current page
and whenever user switches to different page, we call the consolidated
view API again to fetch actions of the switched page. This way we can
reduce the time taken by consolidated view API's action part performant
by 5-10x.
- With this new implementation, we use the basePageId passed to the
consolidated view API and use that to fetch actions belonging to a page,
there are two possibilities here:
- If the app is not connected, basePageId can be used directly to fetch
actions of a page
- If app is git connected, first we need to fetch the pageId based on
basePageId and branchName, then use that pageId to fetch actions
belonging to the current page and branch name.
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.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/10722112357>
> Commit: a725de6d3b82c6aaf8094e8962109635e7cb2a2b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10722112357&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 05 Sep 2024 15:19: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
## Summary by CodeRabbit
- **New Features**
- Introduced functionality to fetch actions specifically for pages,
enhancing action management.
- Improved action retrieval logic to focus on page-specific actions,
streamlining user experience.
- Added a new saga for fetching published page resources, enhancing data
management capabilities.
- **Bug Fixes**
- Enhanced error handling for action fetching to ensure better user
feedback during failures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Fixes#15007
/ok-to-test tags="@tag.Theme"
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10733545727>
> Commit: dec21477152095d034f63a7e08d2719cb0687b12
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10733545727&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Theme`
> Spec:
> <hr>Fri, 06 Sep 2024 06:48:00 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced theme validation for the multi-select widget, improving the
robustness of theme-related tests.
- Added new locators for featured themes to enhance testing
capabilities.
- **Bug Fixes**
- Reactivated a previously skipped test case to validate font
consistency across the application.
- **Refactor**
- Optimized color change handling in the ColorPicker component for
better performance and reliability.
- Refactored theme color control logic for improved maintainability and
clarity.
- **Improvements**
- Enhanced type safety in theme properties to prevent misconfigurations.
- Improved testability of the ThemeCard and ThemeSelector components
with new attributes for automated testing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
/ok-to-test tags="@tag.All"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Enhanced configurability of input widgets with new dependency tracking
and update mechanisms.
- Introduced dynamic font size updates for paragraph widgets, improving
typography control.
- Expanded configuration options for paragraph widgets with a new
`fontStyle` property.
- Added a new type alias for input types, improving type safety and
reliability.
- Improved modularity by consolidating exports for better usability.
- Introduced unit tests for font size update functionality, ensuring
reliability.
- Added unit tests for read-only update functionality, validating
correct behavior across widget types.
- **Bug Fixes**
- Improved widget state management through the addition of read-only
update hooks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10719066708>
> Commit: 395574adcedb9da91bb49c5ed7e9415d03fd6f87
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10719066708&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 05 Sep 2024 12:06:57 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Adds cypress test for checking auto-commit functionality
Fixes#33964
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10715693875>
> Commit: 3dda8362544b4bc7b977e780f7d1140b1343c93f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10715693875&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Thu, 05 Sep 2024 07:45:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced an end-to-end test suite for the Git autocommit feature,
validating UI and backend interactions.
- Added a new property to track the autocommit status bar in the GitSync
class.
- Enhanced the AutocommitStatusbar component for better testability with
a new identifier.
- **Improvements**
- Made auto-commit eligibility checks always available by removing
feature flag gating.
- Improved logging visibility for auto-commit operations by adjusting
log levels.
- **Bug Fixes**
- Streamlined tests by removing unnecessary checks related to the
auto-commit eligibility feature flag.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: sondermanish <sonder.manish@gmail.com>
## Description
Fix issue with forking
Fixes https://github.com/appsmithorg/appsmith/issues/35835
## 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/10715600770>
> Commit: 9a2678c8d590846054bf693d032a6b61fcc31471
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10715600770&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 05 Sep 2024 08:15:19 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 Editor component to better track page transitions,
improving performance and user experience.
- **Bug Fixes**
- Streamlined logic for handling page ID changes to prevent unnecessary
re-initialization of the editor when navigating back to the default
page.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Action redesign: Updating the config for SMTP plugin to use sections and
zones format
Fixes [#35505 ](https://github.com/appsmithorg/appsmith/issues/35505)
## 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/10704929692>
> Commit: f58dfce0a2729442a0e1222762f97cc483e5459b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10704929692&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 04 Sep 2024 19:46: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
- **New Features**
- Introduced a comprehensive email sending interface in the SMTP plugin,
allowing users to input recipient addresses, subject, body type, and
attachments.
- Enhanced layout with a new `DOUBLE_COLUMN_ZONE` structure for improved
organization of input fields.
- **Improvements**
- Expanded styling capabilities for the dynamic input text control,
allowing for more flexible sizing and better responsiveness in the UI.
- Updated existing configurations to streamline the email composition
process and improve user experience.
- **Bug Fixes**
- Adjusted CSS rules to remove minimum height and width constraints for
better adaptability of UI components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Updating the CSS to place the meatball icon in the correct place for
Application Card
Fixes [#36084 ](https://github.com/appsmithorg/appsmith/issues/36084)
## 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/10697709457>
> Commit: 8750fd87ad3d1eb8f94e446e6491d9dfa41c88e2
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10697709457&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 04 Sep 2024 08:41:00 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 layout of the Card component's footer for a more balanced
appearance.
- **Style**
- Introduced a new CSS property to improve spacing between elements in
the CardFooter.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Workflows is not currently supporting multiple js objects. Hence, we
need to disable the option for the workflows editor.
EE branch: https://github.com/appsmithorg/appsmith-ee/pull/5027Fixes#32239
## Automation
/test js
### 🔍 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/10686636668>
> Commit: 5cb101fca88fad7d8ddba64ccec99b76fd49674b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10686636668&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
> Spec:
> <hr>Tue, 03 Sep 2024 16:45:16 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 logic for creating new JavaScript objects, preventing
unnecessary additions in the workflow editor.
- Introduced a function to determine if creating a new JavaScript object
is allowed, improving user experience in the workflow editor.
- Improved responsiveness of the Files component based on the parent
entity type, allowing for context-sensitive behavior.
- **Bug Fixes**
- Addressed limitations in workflow runner support for multiple
JavaScript objects.
- **Refactor**
- Simplified the `onCreate` function's dependencies for improved clarity
and functionality.
- **Tests**
- Added new test cases to validate the behavior of JavaScript object
creation options based on user settings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
https://github.com/user-attachments/assets/7516bcd8-7746-485a-a49d-bd19b22833d0Fixes#35824
> [!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/10663955895>
> Commit: 58d40f7826f125778734f5fda93499e3b78dfcfa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10663955895&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 02 Sep 2024 10:15:26 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced the `WDSSelectWidget`, enhancing widget options within the
application.
- Added configuration files to support autocomplete, validation, and
property management for the new select widget.
- Added new icons and thumbnails for input fields, improving UI
component availability.
- **Improvements**
- Streamlined the `Select` component for better usability and clarity.
- Enhanced type definitions for better type safety and clarity in widget
configuration.
- Improved SVG structures for icons and thumbnails, enhancing visual
representation.
- Adjusted styles for the `Select` component, ensuring consistent sizing
and improved icon alignment.
- **Documentation**
- Added central export for configuration modules, simplifying access to
widget settings.
- Updated stories to include new icons and thumbnails, enriching
documentation resources.
- **Bug Fixes**
- Improved validation logic for default options and custom options to
ensure data integrity.
- **Chores**
- Reorganized import statements for better readability and
maintainability across widget files.
- Updated TypeScript configuration for improved module handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: vadim <vadim@appsmith.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Datasource modularisation - Take out reconnect datasource dependencies
out of DatasourceEditor (part 1)
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.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/10577633946>
> Commit: 2f06f3462ae073440b62c9cc7f7ab14a0fc0d1c2
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10577633946&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Tue, 27 Aug 2024 12:38: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
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
Avoids setting the `user_id` field in intercom when the user is not
logged in
Fixes https://github.com/appsmithorg/appsmith-ee/issues/5003
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10631847104>
> Commit: 1eaad316f8da84f0e99b92842f1dddc177d252c5
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
> Spec: ``
> <hr>Fri, 30 Aug 2024 11:26:34 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 user information handling for improved privacy in the
application.
- Anonymous users will no longer have their usernames processed,
ensuring greater data protection.
- **Bug Fixes**
- Refined logic for extracting user information to prevent exposure of
sensitive data.
- **Documentation**
- Updated comments and documentation to reflect changes in user data
handling and privacy measures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR addresses below issues,
1. Query was not scrollable when code editor field dynamically increase
height. This was caused by the container property in Section. Container
will ignore absolute positioned elements dynamic heights.
2. Fixed code editor field min-width while resizing
3. Fixed ads select feild min-width while resizing.
Fixes#36000Fixes#35901
## Automation
/ok-to-test tags="@tag.Sanity, @tag.IDE"
### 🔍 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/10631460963>
> Commit: 9d9fe7691113f36ecf4172972ae31a69c059a8f4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10631460963&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
> Spec:
> <hr>Fri, 30 Aug 2024 11:24:13 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 styling for the dynamic text field control, improving visual
consistency.
- Introduced a flexible grid layout for better responsiveness across
different screen sizes.
- **Bug Fixes**
- Addressed layout issues with minimum width adjustments for dynamic
text fields and advertisement selectors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The setError function updates the state and the effect is also dependant
on the state which triggers re-render. This is a classic case of
re-rendering due to self state dependency and is fixed with a check if
the error is present for a particular field then it doesn't need to set
again
Fixes https://github.com/appsmithorg/appsmith/issues/35995
## Automation
/ok-to-test tags="@tag.JSONForm"
### 🔍 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/10627924838>
> Commit: 1d5dec675abd788931aab462832455fbce250df3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10627924838&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JSONForm`
> Spec:
> <hr>Fri, 30 Aug 2024 06:50:40 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 error handling logic in the form validation process to
improve efficiency and correctness.
- **Tests**
- Added a new test case to validate the behavior of the form validation
hook when encountering invalid field states.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## 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 -->
## Description
Klona operations are generally expensive, for that reason we will be
tracking the performance of all klonas in the main thread.
## 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/10608431935>
> Commit: cab2716f74f3747d3df64342f4d7f4972358a3e6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10608431935&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 29 Aug 2024 06:26:43 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 telemetry tracking for cloning operations across various
components, enhancing performance monitoring and debugging capabilities.
- **Bug Fixes**
- Improved observability of cloning operations, aiding in identifying
potential performance bottlenecks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
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 :**



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 -->
Reverts appsmithorg/appsmith#35883
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced user-friendly configurations for various MongoDB
operations, including "AGGREGATE," "COUNT," "DELETE," "DISTINCT,"
"FIND," "INSERT," "RAW," and "UPDATE."
- Enhanced dynamic dropdowns for selecting collections and streamlined
input sections for constructing queries.
- **Bug Fixes**
- Simplified the structure of the input text controls for better
usability and responsiveness in UI design.
- **Refactor**
- Cleaned up unnecessary elements in the codebase to improve
maintainability and performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## 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 -->
/ok-to-test tags="@tag.Widget"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Added new input widgets: Email, Password, Number, and Multiline.
- Enhanced configuration options for phone and currency inputs.
- **Bug Fixes**
- Improved type handling for input properties, ensuring better
validation and reliability.
- **Documentation**
- Updated widget exports for better modularity and usage across the
application.
- **Chores**
- Introduced new constants to support the latest input widget types in
the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10572140876>
> Commit: a5c4b41eb615a6c655439f977fc0442cf0e0a237
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10572140876&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
> Spec:
> <hr>Tue, 27 Aug 2024 06:28:05 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
This PR updates the form config for Mongo plugin to accommodate new
SECTION_V2, SINGLE_COLUMN_ZONE, and DOUBLE_COLUMN_ZONE.
Fixes [#35495](https://github.com/appsmithorg/appsmith/issues/35495)
## 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/10561281548>
> Commit: b9a3f0f5da3cb2f985a90644356a20f4b3191259
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10561281548&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 26 Aug 2024 15:08: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 styling for the dynamic input text control, allowing for
improved appearance and responsiveness.
- Introduced a more versatile layout for the MongoDB plugin editor,
including new control types and expanded command selection options for
database operations.
- **Bug Fixes**
- Adjusted CSS properties for flexible sizing of the dynamic input text
control.
- **Documentation**
- Updated JSON configuration for the MongoDB plugin to reflect new
features and control types for better user guidance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR address below issues
1. Edit icon appearing next to application name
2. No cursor pointer for edit icon
Fixes#35878
## 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/10562542656>
> Commit: 31ab617cdc5c37fa1fce7ecadd08a4250e9d373a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10562542656&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 26 Aug 2024 19:15:19 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 the `EditableTextSubComponent` by making the icon interactive
with a cursor pointer style.
- Introduced an optional `hideEditIcon` property for the
`EditableAppNameProps`, allowing for conditional visibility of the edit
icon.
- Updated the `EditorName` component to accept the new `hideEditIcon`
prop for improved customization.
- **Improvements**
- Improved user interface flexibility and customization options for
editing components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Removes unused dependency in `useRegisterFieldValidity` of JSONForm
Introduced in https://github.com/appsmithorg/appsmith/pull/35717
## Automation
/ok-to-test tags="@tag.JSONForm"
### 🔍 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/10554659505>
> Commit: e59355e8484e4dd0707d6c0b7a13b0b96b2b3507
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10554659505&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JSONForm`
> Spec:
> <hr>Mon, 26 Aug 2024 06:45:22 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
- **Performance Improvements**
- Optimized the `useRegisterFieldValidity` function by reducing the
number of dependencies in its `useEffect` hook, potentially enhancing
performance by minimizing unnecessary updates.
- **Bug Fixes**
- Streamlined control flow for error handling within the
`useRegisterFieldValidity` function to ensure consistent behavior when
validating fields and managing errors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## 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 -->
## Description
This PR updated QUERY_DYNAMIC_TEXT field height to 200px. Before it was
configured to 100vh / 4
Fixes#34322
## 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/10520233447>
> Commit: 4fd018dfabf0d813d9a56acecc9ec70bcd1fc109
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10520233447&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 23 Aug 2024 06:32:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Adjusted the height of the Dynamic Text Field Control for improved
stability in rendering.
- Fixed the responsive behavior by setting a fixed height, ensuring
consistent layout across various views.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This pull request adds the `mode` property to the `forkApplicationSaga`
function in the `ApplicationSagas.tsx` file.
The `mode` property is set to `APP_MODE.EDIT`, allowing for better
control and customization of the application editing mode.
Fixes#35835
_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.Fork"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10507731953>
> Commit: eba9176ad4d7696bd8b1095bd302831084dc5cce
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10507731953&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Fork`
> Spec:
> <hr>Thu, 22 Aug 2024 12:33:03 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 application forking functionality by introducing an edit
mode, allowing for more flexible handling of different operational
states during the forking process.
- Improved state management in the page list by adding properties for
tracking the current page and base page ID, enhancing user interaction
with the page list.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Moved Section and Zone widgets to wds folder
Fixes#35810
> [!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/10511698329>
> Commit: 67868d550cebe7b2393803c805132b548c6f1046
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10511698329&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 22 Aug 2024 18:06:57 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced new `WDSSectionWidget` and `WDSZoneWidget` components,
reflecting a new namespace for widget organization.
- Added new constants and an enumeration for widget configuration in the
`wds/constants` module.
- **Improvements**
- Updated import paths for various constants and components to
streamline the codebase organization.
- **Collaboration Enhancements**
- Updated ownership in the `CODEOWNERS` file to include both the
`@appsmithorg/wds-team` and `@appsmithorg/anvil-team` for better
collaboration on widget development.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#35231
/ok-to-test tags="@tag.Anvil"
Before:

After:

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Improved widget border style handling by simplifying parameters and
logic.
- Enhanced visual consistency by removing the `elevatedBackground`
consideration from various components.
- Refined test logic to focus on section properties during space
distribution.
- **Bug Fixes**
- Addressed potential inconsistencies in widget appearance related to
background elevation settings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10503394684>
> Commit: 574aab588e35fc90e59720010e2b8a249bf824ed
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10503394684&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.Anvil
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilHeadingWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Thu, 22 Aug 2024 07:30:08 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Cleans out and reorganises the Redux Actions Constants file
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.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/10489649733>
> Commit: 9fa7003f7c2d1b43a6c693cb1d34ba5cc2c11832
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10489649733&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 21 Aug 2024 13:45:56 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 new interfaces for enhanced structured data handling
related to page management and property pane visibility.
- Added functionality to control widget panel visibility with a new
action.
- **Bug Fixes**
- Improved flexibility in closing property panes by adding an optional
parameter to the related function.
- **Refactor**
- Streamlined import statements for various types to improve
organization and maintainability.
- Removed unused functions and action handlers to simplify user and data
source management.
- Updated action type constants for consistency across the application.
- Removed sagas related to URL redirection and history management,
simplifying navigation handling.
- **Chores**
- Cleaned up unused imports to reduce code clutter and improve
readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR updates the placement of sub title text to the bottom of the
form control. And this will not be applicable to
1. ARRAY_FIELD
2. WHERE_CLAUSE
3. QUERY_DYNAMIC_TEXT
Fixes#34321
## 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/10492518152>
> Commit: 9387183886aba8235a88c900381c5698730d342f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10492518152&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 21 Aug 2024 18:13: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
- **New Features**
- Introduced conditional rendering for subtitles in the form
configuration, enhancing the organization of control types.
- **Style**
- Improved styling consistency for `StyledFormInfo` and
`FormSubtitleText` components by refining display properties and margin
logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR have following fixes and updates,
1. Changed renderEachConfigV2 to accommodate SECTION_V2,
SINGLE_COLUMN_ZONE, and DOUBLE_COLUMN_ZONE.
2. Added classes to form render components to handle parallel use of old
config and new config.
3. Updated Section and Zone component CSS to use nested structure.
4. Fixed the height difference between label with JS toggle and without
JS toggle.
Fixes#35544
## 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/10456040271>
> Commit: 3dcc0df29aaffb0e2470e1561fb996fde3fc4837
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10456040271&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 19 Aug 2024 16:10:09 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved styling for toggle buttons and dropdowns for a better user
experience.
- Enhanced layout adaptability through updated class names and
properties across various components.
- Introduced a new function for more efficient rendering of form
sections and nested components.
- **Bug Fixes**
- Addressed potential layout shifts and visual inconsistencies by
enforcing minimum heights on key components.
- **Documentation**
- Updated CSS selectors for better readability and maintainability
without altering existing functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## 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>
## 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=4Fixes#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 -->
## Description
Filter smartlook urls from page load instrumentation. These api calls
need not be tracked to measure page load performance.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10446808927>
> Commit: c81e741f9dcb071f0961903e806e60260a744677
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10446808927&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 19 Aug 2024 04:16:17 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
## Description
During on page load for a jsonForm widget, the `clearErrors` method was
getting called even if there wasn't any error to clear. This led to
significant number of this function execution for a large scale
application
For more info -
https://theappsmith.slack.com/archives/C024GUDM0LT/p1723206363693759
Fixes https://github.com/appsmithorg/appsmith/issues/35739
## Automation
/ok-to-test tags="@tag.JSONForm"
### 🔍 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/10440802784>
> Commit: 8f449b75c15bd57a65ca75c5b7cffc7417f645c5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10440802784&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JSONForm`
> Spec:
> <hr>Sun, 18 Aug 2024 13:21:29 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved error handling in form validation to ensure errors are
cleared only when necessary.
- **Bug Fixes**
- Enhanced logic for retrieving current error states to provide a more
robust user experience when filling out forms.
- **Tests**
- Expanded test coverage for form validation logic, including various
scenarios to ensure correct behavior under different conditions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR removes some of the errors and logs from the console. The
following fixes were added to this PR
- Remove the error => Refused to set unsafe header "Expect"
- Remove the aria label warnings
- Remove the logs from service worker in dev mode
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.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/10438062046>
> Commit: 63fbfb22f40508ab298c765c4edbba7c42a125e1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10438062046&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sun, 18 Aug 2024 06:12:03 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
- **Accessibility Improvements**
- Added `aria-label` attributes to the `StyledSearchInput` and `Label`
components for enhanced screen reader support.
- Improved the semantic structure of the `Label` component by providing
additional context for assistive technologies.
- **Performance Enhancements**
- Removed the `Expect` header from API requests to streamline the
request process.
- **Logging Adjustments**
- Disabled development logs in the service worker to enhance performance
in production environments.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Why did this PR appear? I wanted to replace the icons from `ads-old`
with the icons from `ads`. After that, I had to fix some affected
components in `ads-old` and in the main app. In the process, I
discovered that a large amount of code is simply not being used.
## 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/10419944222>
> Commit: 86491f43aff37e34468fb7dc32722b9ef2ec60c9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10419944222&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 16 Aug 2024 13:28: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
- **New Features**
- Improved precision in UI element targeting for enhanced test
reliability.
- Broadened icon options within the FilePickerComponent for greater
flexibility.
- **Improvements**
- Shifted component imports to a centralized design system for better
consistency.
- Simplified prop structures for the Button component to enhance
clarity.
- Enhanced validation utilities available for form handling and input
validation.
- **Bug Fixes**
- Enhanced robustness of element locators, reducing potential UI
interaction issues.
- **Refactor**
- Adjusted component properties to align with updated design guidelines,
promoting semantic usage.
- Consolidated exports to emphasize type definitions and utility
functions for better maintainability.
- **Chores**
- Cleaned up imports and updated code structure for improved
maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Widget"
## 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=""
### 🔍 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/10414775054>
> Commit: 445dec9a23df945a5b2a965ce39b8369641bd2b8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10414775054&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
> Spec:
> <hr>Fri, 16 Aug 2024 05:45:49 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Fix the following errors
### POST https://o296332.ingest.sentry.io/api/1546547/envelope/... 429
(Too Many Requests)
We have an integration with Sentry to instrument page loads and other
transactions. This is no longer used. All page load metrics are
collected using a new relic integration.
The sentry transactions api was throwing a 429 error when we exceed our
trial quota. Removing the integration should curb this error.
<img width="1181" alt="Screenshot 2024-08-15 at 1 22 28 PM"
src="https://github.com/user-attachments/assets/543c0ec1-e87f-4439-b715-e75b3a6fd3ed">
[Slack thread
](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1723699775838509)for
more context on our sentry sub exceeding its quota.
### TypeError: e.className.split is not a function at t.value
(PageLoadInstrumentation.ts:112:33)
Add a type check for string.
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.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/10400625143>
> Commit: fc83198b613a973c9a02644fc742947a92bfbd3c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10400625143&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 15 Aug 2024 08:45:49 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**
- Removed performance tracking functionality across various components
and sagas, simplifying the codebase and reducing overhead.
- **Bug Fixes**
- No specific bug fixes were made; improvements focus on performance
tracking removal.
- **Chores**
- Eliminated unnecessary dependencies related to performance metrics,
streamlining the application's dependency management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Added AnimatableGridLayout component, which is designed to be used for
application layout. However, the component is generic and can be used
for any purpose where layout needs smooth transitions.
Fixes#34537
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 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/10377477258>
> Commit: 120433561c026726d29a1f993aa3de533ead6b51
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10377477258&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Tue, 13 Aug 2024 21:54: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
- **New Features**
- Introduced a dynamic grid layout with animated transitions for child
components using React Spring.
- Added functionality to manage grid layout dimensions and child
components with new types and interfaces.
- **Enhancements**
- Improved the `AnimatedGridLayout` component to support responsive grid
layouts with adjustable rows and columns.
- Added visibility resolution based on grid areas, rows, and columns for
better layout management.
- Introduced a custom React hook to access the previous render value for
enhanced state management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Fixes#35232
Because of how sub-pixels are handled in browsers, the resize handle was
previously looking more inclined towards right. By using translate
instead adjusting the width in left property, the issue seems to be
resolved.
Before:
<img width="65" alt="CleanShot 2024-08-13 at 17 08 47@2x"
src="https://github.com/user-attachments/assets/04f65b6a-6ef6-435f-91ea-3ebf1c12e7ab">
After:
<img width="71" alt="CleanShot 2024-08-13 at 17 08 00@2x"
src="https://github.com/user-attachments/assets/bc29017c-c12c-49ee-a14e-270f33b3a6a6">
</details>
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced positioning logic for the space distribution handle,
simplifying the alignment process and potentially improving rendering
behavior.
- **Documentation**
- Added comments to clarify the rationale behind adjustments in the
positioning logic and highlight the benefits of using `translateX` for
centering.
- **Bug Fixes**
- Resolved potential pixel snapping issues related to the handle's
positioning.
<!-- 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
801900efe8c65439e1b82db3fb309dcd59e461a3 yet
> <hr>Tue, 13 Aug 2024 12:05:21 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Removes old DSL migration files and functions
Fixes#26786
## 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/10364165262>
> Commit: c718feaa1c7b35bbe4478c84fb6b554aeb5c3c3a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10364165262&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 13 Aug 2024 06:28:59 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**
- Removed the `renameKeyInObject` function to streamline object
manipulation processes, improving overall code efficiency.
- **Refactor**
- Cleaned up the codebase by eliminating unnecessary functions,
enhancing maintainability and reducing complexity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#35317Fixes#35319Fixes#35272
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced `autocompleteConfig` to manage visibility of autocomplete
features consistently across the application.
- Added `isVisible` property to `defaultConfig` for better control over
widget visibility.
- **Improvements**
- Simplified logic in the `shouldUpdateProperty` method for enhanced
clarity and efficiency.
- Updated `getAutocompleteDefinitions` methods to utilize the new
`autocompleteConfig`, streamlining autocomplete handling.
- **Modifications**
- Expanded export capabilities of configuration modules, including the
new `autocompleteConfig` across multiple widgets.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10368473517>
> Commit: 362f2af4cd0370aefe57c0004102d25c9b10ad33
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10368473517&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.Anvil
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilHeadingWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Tue, 13 Aug 2024 11:27:23 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
### Unit
`index.test.tsx` - (Main connected component that uses floating ui)
- [x] Test rendering of widget name component (floating-ui) based on
"select", "focus" and "none" states from redux selector
- [x] Test rendering of widget name component (floating-ui) based on
error count from redux selector
`AnvilWidgetNameComponent.test.tsx` (Standalone component that renders
content for floating ui to use)
- [x] Test rendering of standalone widget name component based on props.
- [x] Test calling of `onDragStart` callback from the standalone widget
name component.
`SplitButton.test.tsx` (Low level UI component - child of
`AnvilWidgetNameComponent`)
- [x] Test left and right toggle click triggers
- [x] Test if component handles props correctly
### E2E
- [x] Test Dragging via widget name component
- [x] Test widget name component when multiple widgets are selected
- [x] Test Hover and Selection to show widget name component
Fixes#33979
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10349986042>
> Commit: 8c9e6b933fc63306ca4b9322d2cc109909df879d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10349986042&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 12 Aug 2024 11:13:52 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced a comprehensive suite of end-to-end tests for the Anvil
editor's UI in canvas layout mode.
- Enhanced flexibility in widget manipulation on the canvas with an
updated method.
- Expanded selectors for more precise targeting of UI components.
- Added unit tests for the `AnvilWidgetNameComponent` and `SplitButton`
components to ensure expected functionality.
- **Bug Fixes**
- Improved responsiveness of the `AnvilWidgetName` component to state
changes.
- **Documentation**
- Updated comments and structure for clarity in test scenarios and
component functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Removes the extra margin added in the View Mode when Navigation is as
Sidebar. It was noticed that the width of the sidebar was already
accounted for and was reduced from the available width unnecessarily
Fixes#35618
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 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/10349675002>
> Commit: 9778e836c9c8b13e4f6f0971ff36407f452b5d08
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10349675002&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Mon, 12 Aug 2024 10:18:59 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
- **Improvements**
- Enhanced the auto-resizing behavior of the app's canvas by
streamlining the parameters used in the resizing hook, potentially
improving performance and user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This pull request fixes an issue where the error count was not being
properly checked when a list widget was dropped.
* Reverts a previous commit(#35221).
* Include changes to the test file and the widget creation functions to
ensure that the error count is correctly checked when a list widget is
dragged and dropped.
Fixes#35578
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10350318730>
> Commit: 07f3abcff845eb4d350fc9af235d6ed076257264
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10350318730&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 12 Aug 2024 11:35:20 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved drag-and-drop functionality for list widgets.
- **Bug Fixes**
- Enhanced clarity and organization of test cases for better logical
flow.
- **Chores**
- Simplified widget ID generation across several components, improving
consistency in the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
There was an IDE PR : https://github.com/appsmithorg/appsmith/pull/35114
, that got merged which added the `overflow: hidden` property to the
entity explorer which made the show bindings menu disappear from the
view port. Hence, that change is fixed with this PR.
Fixes#35584
_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.IDE"
### 🔍 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/10347893824>
> Commit: 05dd349a6f417e92f412eb6c29201296502c1d9f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10347893824&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Mon, 12 Aug 2024 08:12:07 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **User Interface Changes**
- Adjusted the rendering behavior of the editor pane, allowing overflow
content to be visible, which may enhance the user experience within the
IDE.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Each meta update would cause rerender for the the widget, by batching
meta updates we reduce the number of rerenders thereby improving the
overall performance of the widget.
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.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/10346452761>
> Commit: c1abc97a5d485f1c38885d8e3d1b0e99810027e4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10346452761&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 12 Aug 2024 06:26:33 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 batch processing for widget metadata updates across various
widgets, improving state management efficiency.
- Introduced new methods for committing batch updates, streamlining
interaction handling.
- **Bug Fixes**
- Improved performance and consistency in widget state updates, reducing
unnecessary re-renders.
- **Refactor**
- Modified existing update methods to utilize batching for more
organized state management.
- **Tests**
- Adjustments made to ensure tests align with the new batch update
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Rename `design-system` package to `@appsmith/ads`
## 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/10319507327>
> Commit: 65d9664dd75b750496458a6e1652e0da858e1fc6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10319507327&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 09 Aug 2024 13:47:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
PR to fix the issue with DB url update from admin settings page. When we
migrated the env variable to `APPSMITH_DB_URL` instead of
`APPSMITH_MONGODB_URI` this functionality broke. We had a discussion to
remove this update functionality as this does not work in all the
setups. But as QA has already started pointing this as an issue raising
this PR.
## Automation
/ok-to-test tags="@tag.Settings"
### 🔍 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/10297374384>
> Commit: dbef20ca923a1cba0d7687766481060eab5057fa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10297374384&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Settings`
> Spec:
> <hr>Thu, 08 Aug 2024 07:13:51 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Updated the database connection string naming from "MongoDB URI" to
"Appsmith DB URL" in the Admin Settings, enhancing clarity in
configuration.
- Revised subtext in Admin Settings for improved user understanding of
the database URL's purpose.
- **Bug Fixes**
- Adjusted test cases to reflect the new naming convention, ensuring
consistent references to "APPSMITH_DB_URL" across various tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Google fonts are served by the appsmith instance and change that was
introduced in t[his
PR](https://github.com/appsmithorg/appsmith/pull/22129). This PR removes
redundant the import of google fonts from googleapis.
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.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/10270353461>
> Commit: 142bcc8507af247ced35a92473cc6fdab9868025
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10270353461&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 06 Aug 2024 17:21: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
## Summary by CodeRabbit
- **New Features**
- Transitioned to a fully local/custom font strategy, enhancing branding
consistency and potentially improving load times.
- **Usability Improvements**
- Enhanced output readability in the GitHub Actions workflow, making it
easier for users to identify changed files.
- Updated the file change detection mechanism in the GitHub Actions
workflow for better performance and clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Memoising some computations related to WDS_TOOLBAR_BUTTONS_WIDGET
Fixes #`Issue Number`
## 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/10264040446>
> Commit: c15e274b718fc36f17b8f7edda4f23790b72f16d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10264040446&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 06 Aug 2024 10:43:05 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
- **Performance Enhancements**
- Optimized the `ToolbarButtons` component for improved efficiency by
utilizing the `useMemo` hook, reducing unnecessary calculations and
re-renders.
- Consolidated the computation of `sortedButtons` and `disabledKeys` in
`ToolbarButtonsComponent` for better performance and clarity.
- **Telemetry Integration**
- Added performance tracking capabilities to the `withWidgetProps`
higher-order component, enhancing observability of widget performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Zone widget needs the `flexVerticalAlignment` configurations to make
the layout stretch to occupy all vertical space in a section
- Zone widget's layout configuration needs a `height:100%` to enable
highlights in an empty zone.
## 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/10221060293>
> Commit: 76b97f97b1ff6b487db00684584a97957094bcba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10221060293&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 02 Aug 2024 20:25:54 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 `layoutStyle` property for enhanced border and height
control in layout components.
- Added `flexVerticalAlignment` property to improve vertical alignment
flexibility in widgets, allowing for responsive design enhancements.
These changes aim to provide users with greater customization options
for layout and widget presentation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Some of the self hosted instances are sending data with the entitiy.name
as Appsmith Production OTLP. Therefore we need another attribute to
slice all the cloud data and hostname will be unique to each instance.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> 🟣🟣🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/10234910845>
> Commit: b616a08165d404f8d4fc4a5cc8d467ce4a7476a6
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
> Spec: ``
> <hr>Sun, 04 Aug 2024 08:47:52 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 telemetry data by adding a new `hostname` property, improving
tracking and analysis of telemetry events based on the specific web page
host.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
allKeys is previously computed from the complete unevalTree, we used to
recursively traverse through the entire unevalTree during each
evaluation update cycle. We are optimising this by leveraging the diff
which we have previously computed and using the diff to directly update
the allKeys result.
When delete based diffs detected are detected we are directly deleting
the nodes in the previous allKeys result, for only new nodes we are
recursively computing the allKeys for those nodes and merging it back to
the previous allKeys result. The time complexity of the solution has
improved by limiting iterations to the diff alone instead of computing
the entire unevalTree.
Fixes#35386
> [!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/10220298181>
> Commit: 12b94c33ecfd3fb069b003df16a0f3192f769d62
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10220298181&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 02 Aug 2024 19:22:32 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 a new function for dynamic path management based on
differential updates.
- Enhanced data processing in the DataTreeEvaluator class to improve
dependency tracking and efficiency.
- **Bug Fixes**
- Improved handling of data tree updates to ensure accurate addition and
deletion of paths.
- **Tests**
- Added a comprehensive test suite for the new path management function,
verifying accurate response to various data tree changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
**Problem**
The table widget now supports the Select column type, which allows the
column to contain both a label and a value. This could be useful for
currency fields, foreign keys, or any other case where you want to
display a different version of the column value. However, there is a
problem with sorting. The table always sorts using the value, and does
not give the user an option to sort using the label, where it makes
sense in specific cases.
**Solution**
This PR adds a Sort By property to the table select cell, allowing the
users to choose which value is used for sorting without affecting any
functionality of the label or value of the select cell.
[Additional Technical
Documentation](https://www.notion.so/appsmith/Adding-sortBy-Property-to-Select-Columns-in-Table-Widget-V2-a5a41e6319a047378eb50a42be8c32ef?pvs=4)
**Tested Cases**
1. Sort select column by default value
Objective: Ensure that a newly added table with select column default
sorts by the value
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type.
- Add selectOptions property
- Verify that when sorted in ascending or descending order, the sorting
is correct
2. Sort select column by label
Objective: Ensure that a newly added table with select column and sortBy
property set to label sorts correctly
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that when sorted in ascending or descending order, the sorting
is correct and based on the label value only
3. Verify that sorting of other table cells that are not select works as
expected
Objective: Ensure that every other cell type in the table sorts
correctly
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that when columns other that role are sorted, they are sorted
correctly
4. Verify that sorting works as expected when table data is a binding
Objective: Ensure that the sorting works for all columns while using
data binding in table data
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property
- Verify that all columns sort correctly
5. Verify that sorting works as expected when table data is a binding
and select column sorting is set to label
Objective: Ensure that the sorting works for all columns while using
data binding in table data with a select column set to sort by the label
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property
- Set a column (e.g., role) to select type
- Add selectOptions property
- Set sortBy property to label
- Verify that all columns sort correctly
6. Verify that sortBy logic does not take effect or break user
experience until the user adds selectOptions in select cell
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property or add raw data
- Set a column (e.g., role) to select type
- Do not add selectOptions
- Set sortBy property to label
- Verify that all other columns display and sort correctly
7. Verify that sorting by label and value works correctly in deployed
mode
**Steps:**
- Drop a new table widget
- Link a query binding to the table data property or add raw data
- Set a column (e.g., role) to select type
- Add selectOptions
- Set sortBy property to label
- Deploy application
- Confirm that sorting works correctly for all columns
Fixes#21993
## Automation
/ok-to-test tags="@tag.Table, @tag.Binding, @tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10165119164>
> Commit: 8a4e8b238adc0d78726a811b54a209caa4990606
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10165119164&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Sanity`
> Spec:
> <hr>Tue, 30 Jul 2024 16:02:35 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [x] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a feature flag for dynamic table cell labeling.
- Added a sorting option for select cells, allowing sort by value or
label.
- Enhanced user interface with new configuration options for select
components.
- Improved sorting functionality for select columns to sort by labels.
- **Bug Fixes**
- Improved sorting functionality in the table widget to ensure accurate
data representation.
- **Tests**
- Expanded and clarified test cases for sorting functionality in the
Table Widget V2.
- Updated testing structure for better reliability and isolation of test
scenarios.
- Integrated dynamic testing capabilities based on feature flags.
- **Documentation**
- Added new locators for sorting controls to enhance UI interaction
capabilities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Added zone component to the UQI. This component will maintain the single
and double column layout.
Fixes#35214
## 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/10193706753>
> Commit: e4bc652b691a5bfb5be60c393e7822f418c1e458
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10193706753&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 01 Aug 2024 07:35:05 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 `Section` component for modular UI design,
facilitating easy integration of standalone and non-standalone sections.
- Added a `Zone` component to manage layout options with single-column
and double-column formats, enhancing layout flexibility.
- New CSS modules for `Section` and `Zone` components improve styling
and responsiveness across different screen sizes.
- Created a centralized entry point for streamlined access to `Section`
and `Zone` functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
**Problem**
While we don't have the configuration interface for blocks, we should
make them available as we have other regular widgets, but we shouldn't
promote them for new users, since they are not able to easily modify
them.
Remove the building blocks empty state that is creating confusion.
**Solution**
1. Move the building blocks group to the bottom of the widget sidebar
2. Adjust tests to suit new demands
Fixes#34964
## Automation
/ok-to-test tags="@tag.IDE, @tag.Widget, @tag.Templates"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10187244230>
> Commit: e0aac0ea572e34716e8613a272c5ba0cadbd6fde
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10187244230&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE, @tag.Widget, @tag.Templates`
> Spec:
> <hr>Wed, 31 Jul 2024 21:39:07 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Simplified the onboarding component to display static content instead
of dynamic behavior based on application state.
- **Bug Fixes**
- Updated test cases for the onboarding component to ensure it does not
render in preview mode, enhancing accuracy in expected behavior.
- Revised tests to reflect changes in the visibility of the suggested
widgets based on feature flag settings.
- **Chores**
- Minor reorganization of import statements and constants for clarity
without affecting functionality.
- Streamlined the visibility logic of suggested widgets by removing
unnecessary feature flag dependencies.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR added section component that can be used in UQI forms
Fixes#34319
## 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/10176993550>
> Commit: 95175f3dfff8659a42b453e6b205e2a1fd4d91b1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10176993550&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 31 Jul 2024 09:09: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
- **New Features**
- Introduced a modular `Section` component for improved UI structure and
reusability.
- Added responsive styling for the `Section` component, enhancing visual
consistency across the application.
- Enhanced accessibility by allowing other modules to easily integrate
the `Section` component through the `ActionForm` module.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
By re organising the panels in the IDE, we are creating a new Code
Editor only panel which is separate from the main / canvas and the
explorer panel. This ensures that the Code Editor is not remounted when
switching between Split screen and Full screen. This PR is also
improving the Preview mode by not changing urls when entering and
exiting preview modes.
EE PR: https://github.com/appsmithorg/appsmith-ee/pull/4760Fixes#31707Fixes#31387Fixes#34545Fixes#34546
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10177085462>
> Commit: 26688b0fde7e797d88996ef569d9fc06e3942958
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10177085462&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 09:42:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced `EditorPaneExplorer` and `QueryExplorer` components for
enhanced navigation and query management within the IDE.
- Added visual enhancements to `ListJSObjects` and `AddWidgets`
components with new style properties.
- **Improvements**
- Implemented clamping in the `useDynamicAppLayout` hook to prevent
negative width values, enhancing layout stability.
- Updated layout management to ensure a responsive user experience based
on IDE view modes.
- **Style**
- Enhanced visual clarity by adding borders to various components,
improving UI separation and organization.
- **Bug Fixes**
- Streamlined test cases in the `Postgres2_Spec.ts` to maintain coherent
sequencing after removing unnecessary tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes#35296
## 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/10182307436>
> Commit: 8b0aa1a644769cd28161b92a21f7426d0d94cf4f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10182307436&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 15:48:59 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 TypeScript dependency across multiple modules to support newer
features and improvements.
- Updated `colorjs.io` dependency in design system packages to enhance
functionality.
- **Bug Fixes**
- Enhanced type-checking and overall code quality through dependency
updates.
- Refined color values in both `LightModeTheme` and `DarkModeTheme` to
improve visual accuracy.
- **Chores**
- Improved flexibility in dependency management by allowing minor and
patch updates for TypeScript and `colorjs.io`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Enabled the rule `@typescript-eslint/no-explicit-any`
- Suppressed errors with comment
```
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
```
Fixes#35308
## 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/10181176984>
> Commit: 7fc604e24fa234da7ab2ff56e0b1c715268796ee
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10181176984&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 15:00:45 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
Upgrade Typescript from 4.9.5 to 5.4
Upgrading to 5.5 is not possible until we upgrade colors.js lib. It will
be done in separate PR
More details here
https://github.com/color-js/color.js/issues/560#issuecomment-2182819685
## 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/10163124159>
> Commit: 8d2e93f2e2913e715686ccb058d3efddd55aabc9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10163124159&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 14:11:42 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 TypeScript dependency to the latest version (5.4), enhancing
overall functionality with potential new features and improvements.
- **Improvements**
- Enhanced type safety by refining the `isString` function, allowing
better type inference and preventing runtime errors.
- Improved comments and annotations in the `indirectEval` function for
better clarity on its usage and intent.
- Corrected typographical errors in error handling logic across multiple
controllers, improving reliability in error messaging.
- Updated export style for `IconNames` to clarify its purpose as a type,
enhancing developer experience.
- **Configuration Changes**
- Updated Jest configurations to better support ECMAScript Modules
(ESM), improving compatibility and allowing for more flexible module
handling.
- Adjusted TypeScript configuration to enhance module handling and
compatibility.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add a new application setting which would allow users to set max width
of their applications.
Fixes#34993
## 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/10159296604>
> Commit: d2a98dcaecda2903dd8233f1f53ea119721095fa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10159296604&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 09:50:48 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced a new constant for application maximum width settings,
allowing for `Unlimited`, `Large`, and `Medium` options.
- Added an `AppMaxWidthSelect` component for users to select maximum
width configurations from a dropdown menu.
- Enhanced `Canvas` and `MainContainerWrapper` components to accept and
utilize maximum width settings for improved layout adaptability.
- Implemented a new selector to retrieve the maximum width setting for
use in various components.
- Enhanced the theme property pane to allow users to customize the
application layout through maximum width selection.
- Updated `CanvasFactory` to utilize the application theme settings for
a more responsive layout.
- **Bug Fixes**
- Improved initialization logic to prevent null reference issues related
to theme settings.
- **Tests**
- Enhanced test cases to verify inclusion of maximum width settings in
exported applications and during application imports.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
## Description
This PR addresses below release blockers
1. Toast UI seems broken
Fixes https://github.com/appsmithorg/appsmith/issues/35274
## 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/10159241062>
> Commit: b772f12949a34fc5b7b4d838bf96dee911da8806
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10159241062&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 09:45:47 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved notification handling for file size errors in the FilePicker
component.
- Enhanced messaging functionality in the OneClickBinding saga for error
and success notifications.
- Updated event handling in the AppIcon component to accept a broader
range of event types.
- **Bug Fixes**
- Updated notification method to ensure consistent user messaging across
components.
- **Chores**
- Removed outdated Toast component from module exports to streamline
imports.
- Updated CSS import path for the current design system to improve
styling consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Valera Melnikov <valera@appsmith.com>
## Description
Add widget type to id in order to simplify debugging. For example
`3jgf4p6owp` => `section-3jgf4p6owp`
## 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/10158529399>
> Commit: 053f81ff4f5a92120b2b289ccb18125eb04380d8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10158529399&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 08:58:49 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 organization of widgets with unique prefixes for `widgetId`
generation, allowing for better identification of section and zone
widgets.
- Improved logic in the WidgetCard for differentiating widget types
through structured `widgetId` prefixes.
- **Bug Fixes**
- Addressed issues related to widget ID uniqueness, ensuring consistent
and organized widget management within the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description:
In this PR I have fixed the GitConfig route `dev.appsmtih.com/profile`
with the help of `fetchGlobalGitConfigInit` method.
Now If an unauthorized user try to access this URL , it will redirects
to the login page.
## Issue video
[Screencast from 11-07-24 02:37:08 PM
IST.webm](https://github.com/appsmithorg/appsmith/assets/127818049/1c851c90-c0d0-47d7-8b1e-8c5df74b6f28)
## Solution video
[Screencast from 11-07-24 02:36:02 PM
IST.webm](https://github.com/appsmithorg/appsmith/assets/127818049/7f7840e7-d00c-4deb-93f0-ad7c3bc74bf5)
> [!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#34603
> [!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=""
### 🔍 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?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Added automatic fetching of global Git configuration when visiting the
UserProfile page.
- **Refactor**
- Simplified imports and component logic in the UserProfile and
GitConfig components for better maintainability.
- **Bug Fixes**
- Improved initialization behavior of the GitConfig component by
removing redundant fetch operations.
- **Tests**
- Introduced unit tests for the UserProfile component to verify
rendering behavior based on user authentication states.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In this PR canvas resizing hook was refactored, many unnecessary effects
were removed leaving the bare minimum.
Fixes#34741
## 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/10155774784>
> Commit: 1900e8b429151d160e20712b6aca962f3a0e33ec
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10155774784&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 05:37: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 constant for resize debouncing to optimize UI
performance.
- Added a custom hook to automatically resize canvas elements based on
container dimensions.
- **Enhancements**
- Improved responsiveness of the app layout with better width management
for canvas elements.
- Enhanced structure and readability of components through destructuring
props.
- **Bug Fixes**
- Updated logic in the main canvas reducer to prevent unnecessary state
updates after initialization.
- **Tests**
- Updated tests to reflect changes in hooks focusing on canvas width
auto-resizing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Horizontal scroll was not enabled in JS object side by side view. To fix
the content overflowing issue, this PR added word wrap by limiting the
width of the editor.
Fixes#35240
## 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/10143519420>
> Commit: ce0fcc909397544a013a46c3ff71ca8762e2ace5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10143519420&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 29 Jul 2024 13:03: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
- **Enhancements**
- Improved the layout of the JSEditor component for better
responsiveness and alignment by ensuring it takes the full width of its
container.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes#34867
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/10146061245>
> Commit: 9ac28174b641b21237c9469a81b7d5bccb651c80
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10146061245&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 29 Jul 2024 15:13: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**
- Expanded `searchTags` for various widgets, enhancing discoverability
and contextual relevance during searches.
- Introduced new `searchTags` for widgets like Menu Button and Switch
Group to improve categorization.
- **Enhancements**
- Updated existing `searchTags` across multiple widgets, broadening the
keyword scope for better identification and user interaction.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Move [ADS](https://github.com/appsmithorg/design-system) to local
packages
- Fix ADS stories according of Storybook 8
- Fix type errors
- Update Storybook to latest version to be able to run `test-storybook`
- Remove unused files(components, tests, stories) from
ADS-old(design-system-old)
Following steps:
- Merge `ads-old` and `widgets-old`, only 1 package should remain
- Rename packages https://github.com/appsmithorg/appsmith/issues/27658
- Use `importSvg` `importRemixIcon` from ADS remove this functionality
from `ads-old`
Fixes#34252
## 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/10114839347>
> Commit: 64cdfec4d2acd45ca955cc0d19c3cb582e1ac0ad
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10114839347&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 26 Jul 2024 17:49: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
-->
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Multiple functions from `widgetAdditionSaga` have been removed from
the flow when adding new Anvil widgets to Canvas
- The removed functions have alternatives specific to Anvil
##Tasks
- [x] Move functions and cut down code run during Anvil widget addition
flow
- [x] Cleanup code
Fixes#34896
## 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/10099580771>
> Commit: 50d9f0349f172ebd5cd5695a4345225ac565379c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10099580771&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 25 Jul 2024 19:31: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 a new property to manage default widget properties for
improved widget addition efficiency.
- Enhanced the application’s capability to manage and display layout
information dynamically for the main canvas.
- Added new saga functions to facilitate the addition of widgets to the
Anvil canvas, improving user interaction with suggested widgets.
- **Bug Fixes**
- Streamlined widget addition logic for better performance and
maintainability in the Anvil canvas.
- **Refactor**
- Simplified and reorganized the saga functions related to widget
addition, improving clarity and efficiency.
- Replaced legacy functions with updated methods for handling widget
properties and state management.
- **Documentation**
- Improved comments and descriptions in the code to clarify the new
logic and functionality changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Tiny fix to reduce getCommonTelemetryAttributes overhead, memoising the
appMode computation in this PR.
> [!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/10140023081>
> Commit: bba9da0812aea4a07e7646b2e7245799c70f9318
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10140023081&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 29 Jul 2024 08:26:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a memoized function for computing application mode,
enhancing performance by reducing unnecessary recalculations.
- **Improvements**
- Enhanced efficiency in telemetry attribute generation by optimizing
the application mode determination process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
We need to profile a few functions in JSON forms, observed that in some
customer's apps the following functions
- clearErrors
- parseAndSaveFieldState
takes as much 10% in main thread scripting. We are adding setError just
to check if this function is performant or not as well.
Fixes#35228
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10114403810>
> Commit: 90f5c31b2fc05e225cb827ec680c4bd68dc1e95f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10114403810&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Fri, 26 Jul 2024 16:46:46 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 telemetry tracking around function executions to improve
observability and performance monitoring.
- Enhanced error-clearing logic in the form widget to include telemetry
tracing for better analysis.
- **Improvements**
- Added performance tracking to the `parseAndSaveFieldState` method in
the JSONFormWidget for optimized performance insights.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Capturing telemetry of widget renders and only enabling the profiled
build for community users. This should cause a minor performance
overhead and in case performance degrades too much we can disable the
widget profiled telemetry by disabling the new relic flag(set this to
false `APPSMITH_NEW_RELIC_ACCOUNT_ENABLE`).
Fixes#35184
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10111247316>
> Commit: 38310d7341e7a2acb30491e478edaedbbc16a739
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10111247316&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Fri, 26 Jul 2024 12:55:43 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 `WidgetProfiler` component to track rendering performance
metrics.
- Added a new function for enhanced telemetry span management.
- **Improvements**
- Updated build script to allow for profiled builds based on environment
variables, improving performance analysis.
- Implemented GZIP compression for OTLP trace data transmission,
optimizing bandwidth usage.
- **Refactor**
- Removed `Sentry.withProfiler` for widget profiling, simplifying
performance monitoring.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
When create datasource is initiated from the API editor by clicking
"Save as datasource", it fixes the redirection back to the API editor
when `Save` is clicked for modules in package editor.
This PR also refactors the usage of typing of `actionRouteInfo` and
introduces `parentEntityId` instead of using `pageId`, `moduleId`,
`workflowId` separately.
This fix also verifies the sanity of
1. API in apps
2. API in workflows
Fixes https://github.com/appsmithorg/appsmith/issues/31506
## Automation
/ok-to-test tags="@tag.Datasource,@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/10093685845>
> Commit: 785cbe3a0a42fad2f2ca1d7fb76010eb00505343
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10093685845&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource,@tag.Sanity`
> Spec:
> <hr>Thu, 25 Jul 2024 12:39:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new function to retrieve the current module ID, enhancing
state management.
- Added support for handling `parentEntityId` in various data source
sagas.
- **Bug Fixes**
- Improved type safety for action handling in sagas.
- **Tests**
- Added a new test suite for the `handleDatasourceCreatedSaga` to
validate its behavior upon datasource creation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
**Issue**
In the table widget, the select column currently displays the value from
the dropdown when a user makes a selection, rather than the label. This
behaviour is inconsistent with the standalone select widget, which
correctly renders the label upon selection.
**Fix**
This PR addresses the inconsistency by modifying the table widget's
select column to display the label of the selected item, while
maintaining the table cell value and ensuring alignment with the
behaviour of the standalone select widget.
**Tested Cases**
Manual Test Cases for Table Select Widget Improvement
1. Default Value Display
**Objective:** Ensure that a new table displays the correct default
label key from the selectOptions in the cell.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Verify that the table cell displays the value from the label key of
the `selectOptions` by default.
2. Binding Check for Selected Row
**Objective:** Ensure that the table binding for the selected row
reflects the correct value key from the selectOptions.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Select a row and verify that `Table1.selectedRow.gender` matches the
value key from the `selectOptions`.
3. Updating Table Cell Content
**Objective:** Verify that updating the table cell content via the
dropdown updates the cell with the correct label key property.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Change the content of the table cell using the dropdown.
- Confirm that the cell content updates accordingly with the value key
property.
4. Add New Row Functionality
**Objective:** Ensure that adding a new row works as expected with the
enhanced functionality.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Add a new row to the table.
- Verify that the new row uses the label key property from the
`selectOptions` in the table display.
5. Deployed Mode Verification
**Objective:** Verify that the display functionality works correctly in
deployed mode.
**Steps:**
- Drop a new table widget.
- Add sample data to the table.
- Set a column (e.g., gender) to select type.
- Change the displayAs property to both value and label.
- Deploy the table.
- Verify that the table displays correctly in both value and label modes
in the deployed environment.
Fixes#26188
## Automation
/ok-to-test tags="@tag.Table, @tag.Binding, @tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10080592979>
> Commit: 78b268d2b566aa07ef23fec567ce05e8c5a6add4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10080592979&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Sanity`
> Spec:
> <hr>Wed, 24 Jul 2024 17:17:06 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved display of selected options in table widgets by showing the
corresponding label instead of the raw value.
- Introduced a feature flag to toggle the table cell label value
functionality.
- **Bug Fixes**
- Enhanced test cases to ensure accurate validation of select options
behavior within the table widget.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR added state reset for loading statuses.
Fixes#35108
## 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/10090010865>
> Commit: 654d8f618bbb21105e2e5ea970bbc40faf62a3f3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10090010865&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 25 Jul 2024 08:28:22 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 mechanism to reset the saving state of the editor across
multiple Redux reducers, enhancing state management during user
interactions.
- Added explicit tracking for loading states within the editor reducer
to improve UI feedback during saving operations.
- **Bug Fixes**
- Corrected handling of the `RESET_EDITOR_REQUEST` action to ensure
appropriate state resets across various reducers, improving overall
application responsiveness.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## 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.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/10070546330>
> Commit: e7ee6fafb05b7147590f864b6361a49b293f7237
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10070546330&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 24 Jul 2024 04:58:18 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 telemetry management with the integration of OpenTelemetry
metrics for real-time performance monitoring.
- New capabilities for exporting application metrics alongside existing
tracing functionality.
- **Bug Fixes**
- Improved clarity and maintainability of resource attributes and
variable naming conventions in telemetry management.
- **Chores**
- Updated dependency versions for OpenTelemetry packages, ensuring
enhanced observability and performance tracking capabilities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes sniping for module instances.
For binding to widgets, the module instance id and moduleInstance name
was to be passed to the `BindDataButton` component.
Fixes https://github.com/appsmithorg/appsmith/issues/31957
## 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/10056587287>
> Commit: 74ec4dc42fee3ca211037c60753aee4c869a4e83
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10056587287&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 23 Jul 2024 10:37:32 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [x] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new `apiName` prop in the `ApiResponseView` component for
enhanced flexibility in API response rendering.
- Added `moduleInstanceId` to `BindDataButtonProps` for improved data
binding context.
- Enhanced `QueryResponseTab` components by adding `actionName` prop,
improving functionality and display.
- **Bug Fixes**
- Updated logic in `QueryResponseTab` to allow for fallback to
`actionName` when rendering, enhancing adaptability.
- **Tests**
- Added a comprehensive test suite for `bindDataToWidgetSaga` to ensure
expected behavior and integration with Redux state management.
- **Refactor**
- Improved the logic in `bindDataToWidgetSaga` to utilize `actionName`,
streamlining the data binding process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes canvas resizing issue and introduces performance improvements.
Fixes#34741
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 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/9976888930>
> Commit: 89ccd69466efaf6ea6a55c2b3b3fb20175024dbd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9976888930&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Wed, 17 Jul 2024 15:42:40 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 auto-resize functionality for canvas elements based on
container width.
- Added debouncing for resize events to improve performance.
- **Refactor**
- Reorganized imports and constants for better modularity and
maintainability.
- Updated component and hook references to use new
`useCanvasWidthAutoResize`.
- **Tests**
- Added tests for canvas width resolution logic to ensure correct
behavior across different layout types.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Issue: The GRAPHQL plugin logo is shown same as RestAPI plugin.
Fix: Imported the right logo for graphql and used the right image in the
img tag
Fixes#34961
## Automation
/ok-to-test tags="@tag.Sanity @tag.IDE"
### 🔍 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?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Updated the New API screen to display the GraphQL logo instead of the
Plus logo.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Adds placeholder functions to transform trigger eval error in EE
PR for https://github.com/appsmithorg/appsmith-ee/pull/4695
## 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/10040597202>
> Commit: 784d698f1d7761af54b9b7e4061b77ef98cd3ce4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10040597202&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 22 Jul 2024 13:11: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
- **New Features**
- Introduced a new function for processing evaluation errors, enhancing
error management capabilities.
- Improved error handling in the evaluation process for better debugging
and clarity.
- **Bug Fixes**
- Enhanced type safety and clarity by incorporating new type definitions
related to evaluation errors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Updated new tab ui with search, load more and updated titles.
Fixes#34809, #34530
## 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/10036807357>
> Commit: 2d37c01455f48de14510fa17cae104dd7578091c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10036807357&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 22 Jul 2024 08:46:24 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**
- Added search functionality in the JS and Query Editor Panes to filter
and display grouped items based on search terms.
- Introduced a new component to render grouped lists with dynamic load
more functionality.
- **Enhancements**
- Improved text and terminology for clearer user understanding in
various modules.
- Enhanced layout alignment by adjusting component heights to account
for editor tabs.
- **Refactor**
- Improved type safety and refined logic in multiple functions for
better performance and maintainability.
- Replaced hardcoded values with constants for consistent and easier
management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fix text wrapping into paragraph and heading widgets
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/10047055173>
> Commit: d0f7b27b1f329f3293ea20dc548f076e967874b4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10047055173&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 22 Jul 2024 19:49: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
- **New Features**
- Introduced a new `wordBreak` property to the text component for
improved control over text wrapping and overflow.
- Enhanced the `WDSParagraphWidget` to utilize the new `wordBreak`
property, improving text layout and readability.
- **Bug Fixes**
- Corrected a typo in documentation for the `TextProps` interface to
enhance clarity.
- **Style**
- Modified CSS styles affecting text overflow behavior, enabling better
customization and responsive design.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced theme setting and snapshot verification for various widgets
in different modes (Canvas, Preview, Deploy).
- Added a new CSS rule to enhance the styling of input elements based on
specific conditions.
- **Refactor**
- Renamed existing snapshot verification methods to more descriptive
names across multiple widget snapshot files.
- Added methods to handle theme settings and detailed snapshot matching.
- **Tests**
- Enhanced testing functionality for widgets with updated methods for
snapshot verification across different themes.
These updates ensure more detailed and theme-specific snapshot testing
for various widget states, improving test coverage and accuracy, as well
as enhancing the layout consistency of input elements.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10046186626>
> Commit: a6232ae795f77bd46bff4c854f46c5671a518ff6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10046186626&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 22 Jul 2024 18:43:52 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: Valera Melnikov <valera@appsmith.com>
## 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.Anvil"
### 🔍 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/9942515767>
> Commit: db1ef7c00e0caa0c433984a198d9e8059a7b609e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9942515767&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 15 Jul 2024 16:12:38 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 icon library with new thematic icons and improved
accessibility features.
- Introduced a default option in dropdowns for color selection in the
property pane.
- **Bug Fixes**
- Corrected naming inconsistencies in icon entries.
- **Improvements**
- Streamlined color handling for icon and text components, enhancing
visual coherence.
- Update to the icon component's logic for improved maintainability and
clarity.
- **Documentation**
- Added comments for better understanding of the handling of type errors
in the icon component's story.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Adding a prop to JSResponse View component to accept the default search
text for the logs tab
PR for https://github.com/appsmithorg/appsmith-ee/pull/4695
## Automation
/ok-to-test tags="@tag.JS"
### 🔍 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/9961504301>
> Commit: d6faf1945320bf0e662c4fffdd99258ea66364d5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9961504301&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
> Spec:
> <hr>Tue, 16 Jul 2024 18:08:24 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 Debugger Logs: Users can now see a default name in the
debugger logs if provided, improving clarity and traceability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixed padding for add and list view of tab as per design.
Fixes#34529
## Automation
/ok-to-test tags="@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/10035415378>
> Commit: 03296dd5822b1d77342b243e1e606d29a66487f7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10035415378&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE, @tag.Sanity`
> Spec:
> <hr>Mon, 22 Jul 2024 07:39: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
- **User Interface Enhancements**
- Adjusted padding and layout properties across various components to
improve visual alignment and spacing.
- Simplified component structures by removing unnecessary padding
properties.
- **Bug Fixes**
- Resolved potential issues related to visual inconsistencies caused by
previous padding configurations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixed the alignment of icons inside tabs container.
Fixes#34532
## Automation
/ok-to-test tags="@tag.Sanity, @tag.IDE"
### 🔍 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/10035753491>
> Commit: e9ea2fcd0803e40918161573154f6edc50f8d4bb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10035753491&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
> Spec:
> <hr>Mon, 22 Jul 2024 06:52:30 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
- **Style**
- Improved visual alignment of icons within the tab by adjusting padding
in the `StyledTab` component.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Tabs overflow switch was staying active when no tabs is selected. This
was confusing users and was grabing attention towards it. This PR
removed the list button when there are no tabs.
Fixes#34624
## Automation
/ok-to-test tags="@tag.Sanity, @tag.IDE"
### 🔍 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/9970645051>
> Commit: 00ca00327095807d91964f191e898e0fee36be54
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9970645051&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
> Spec:
> <hr>Wed, 17 Jul 2024 08:44: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
- **New Features**
- Improved the conditional rendering of the `ToggleButton` in the
`EditorTabs` based on `ideViewMode` and file presence for a more
intuitive user experience.
- **Tests**
- Simplified and generalized the test cases for `EditorTabs` to ensure
more reliable test results.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Add the initial fetch all entity completion to the affectedJSObject
logic to make sure the JSObjects are defined on page change
Fixes#34681Fixed#34933
## Automation
/test js
### 🔍 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/9998917287>
> Commit: 88f6c636e89de881883e6d4f5d648104257977b9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9998917287&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
> Spec:
> <hr>Thu, 18 Jul 2024 22:05: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
- **Bug Fixes**
- Improved handling of specific action types to ensure correct
identification of affected objects.
- Enhanced logic to address cases where action types are not included in
the predefined set, providing more accurate results.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9973739413>
> Commit: 7257b78f685484fdd32a1e451e33f514af92ded7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9973739413&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 17 Jul 2024 12:19:38 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**
- Added exclusion of new widget types (Zone, Section, Modal, Button, and
Table) from the Property Pane view.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
HI @Nikhil-Nandagopal @rohan-arthur @btsgh ,
Fixes#15030
What's in this PR?
- Add Clear all option to the columns field by using allowClear prop to
select component in google sheets datasource.
- Add clearAllOptions function to apply the clear all options
functionality.
**Screenshots :**
Earlier :

Now :

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Added a clear selection functionality to the dropdown, allowing users
to easily clear all selected options.
- **Tests**
- Implemented new tests for the dropdown functionality to ensure proper
rendering and user interactions, including selecting and clearing
options.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes [#31114](https://github.com/appsmithorg/appsmith/issues/31114)
Added missing field isVisible in getAutocompleteDefinition fn
Added cypress test
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced autocomplete functionality in the JSONForm Widget to include
the `isVisible` property.
- **Tests**
- Added a new test case to verify object properties in the autocomplete
list for the `isVisible` field in the JSONForm Widget.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- In this PR I have fixed wrong evaluated value after binding checkbox
group widget with query
Output:
[Loom](https://www.loom.com/share/ddcc10c5ab8b4ead8ef5d10843671d95?sid=6346b4a9-9a89-4c7d-bdcd-73c428f17626)
> [!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#24620
_or_
Fixes https://github.com/appsmithorg/appsmith/issues/24620
> [!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=""
### 🔍 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?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced comprehensive snapshot tests for Anvil Widgets in Canvas,
Preview, and Deploy modes.
- Added test cases for Anvil modals in the Anvil editor.
- Enabled filtering functionality for TableV2 widgets by default.
- **Bug Fixes**
- Addressed issues with Git sync tests by updating selectors and
function calls.
- Fixed control flow in various Cypress tests by removing `cy.pause()`.
- **Chores**
- Updated Dockerfile to ensure custom command-scripts have executable
permissions.
- Added environment variable `DP_POSTGRES_URL` to Docker deployment
configuration.
- **Refactor**
- Refined job configurations and script executions in GitHub Actions
workflows for improved performance and clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#33982
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9952206667>
> Commit: d70ec63edc6cbc9a760c0c1471f9f4249557ee2f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9952206667&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 16 Jul 2024 07:23:09 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 tests for paste functionality in the Anvil editor, covering
various scenarios to ensure correct behavior when pasting widgets.
- **Improvement**
- Enhanced the paste function in Anvil editor to skip processing when no
copied widgets are present.
- **Tests**
- Added comprehensive test cases to verify the paste functionality,
including drag-and-drop, keyboard shortcuts, and validation of widget
placement and attributes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
Today, the DSL contains many properties that are not necessary to be
persisted, as these are properties which are inherent to the widget type
and are statically available in the codebase and during runtime.
`getChildWidgetProps` is the lowest level function the widget addition
flow that is not used in recursion and does not need to return these
runtime properties for proper functioning of the widget addition flow.
The flow is as follows:
`addChildSaga` -> `getUpdateDSLAfterCreatingChild` ->
`generateChildWidgets` -> `getChildWidgetProps` -> `generateWidgetProps`
(Don't understand the distinction in the names of the functions? Me
neither)
In this PR, we're selectively deleting the properties which are going to
be set into the DSL and are not required by the DSL. This is done in the
`getChildWidgetProps` function.
DSL Before:
```{
"isVisible": true,
"type": "BUTTON_WIDGET",
"animateLoading": true,
"text": "Submit",
"buttonVariant": "PRIMARY",
"placement": "CENTER",
"widgetName": "Button1",
"isDisabled": false,
"isDefaultClickDisabled": true,
"disabledWhenInvalid": false,
"resetFormOnClick": false,
"recaptchaType": "V3",
"version": 1,
"responsiveBehavior": "hug",
"minWidth": 120,
"searchTags": ["click", "submit"],
"tags": ["Buttons"],
"hideCard": false,
"isDeprecated": false,
"displayName": "Button",
"key": "yngxey92vx",
"iconSVG": "https://release-appcdn.appsmith.com/static/media/icon.7a418b9e1899a550d7e8f33b48cbde12.svg",
"thumbnailSVG": "https://release-appcdn.appsmith.com/static/media/thumbnail.a348658e996feaad96cadc30d99374ff.svg",
"needsErrorInfo": false,
"onCanvasUI": {
"selectionBGCSSVar": "--on-canvas-ui-widget-selection",
"focusBGCSSVar": "--on-canvas-ui-widget-focus",
"selectionColorCSSVar": "--on-canvas-ui-widget-focus",
"focusColorCSSVar": "--on-canvas-ui-widget-selection",
"disableParentSelection": false
},
"widgetId": "3du74sjd24",
"renderMode": "CANVAS",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}",
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"isLoading": false,
"parentColumnSpace": 16.21875,
"parentRowSpace": 10,
"leftColumn": 16,
"rightColumn": 32,
"topRow": 27,
"bottomRow": 31,
"mobileLeftColumn": 16,
"mobileRightColumn": 32,
"mobileTopRow": 27,
"mobileBottomRow": 31,
"parentId": "0",
"dynamicBindingPathList": [
{ "key": "buttonColor" },
{ "key": "borderRadius" }
]
}
```
DSL After:
```
{
"isVisible": true,
"type": "BUTTON_WIDGET",
"animateLoading": true,
"text": "Submit",
"buttonVariant": "PRIMARY",
"placement": "CENTER",
"widgetName": "Button1",
"isDisabled": false,
"isDefaultClickDisabled": true,
"disabledWhenInvalid": false,
"resetFormOnClick": false,
"recaptchaType": "V3",
"version": 1,
"responsiveBehavior": "hug",
"minWidth": 120,
"key": "gtjsfondgr",
"needsErrorInfo": false,
"widgetId": "cszodka6p1",
"renderMode": "CANVAS",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}",
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"isLoading": false,
"parentColumnSpace": 16.21875,
"parentRowSpace": 10,
"leftColumn": 18,
"rightColumn": 34,
"topRow": 28,
"bottomRow": 32,
"mobileLeftColumn": 18,
"mobileRightColumn": 34,
"mobileTopRow": 28,
"mobileBottomRow": 32,
"parentId": "0",
"dynamicBindingPathList": [
{ "key": "buttonColor" },
{ "key": "borderRadius" }
]
}
```
Fixes#21825
## 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/9904027497>
> Commit: b6eac580e47dcdd0b056acdb574aac7b8c7cba2f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9904027497&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 12 Jul 2024 08:10:58 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved the drag state generation logic for fixed layouts to enhance
performance and maintainability.
- Simplified the `widget` object in the `WidgetAdditionSagas` to remove
unnecessary properties, improving clarity and efficiency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Check the issue description for the actual problem.
Solution:
To mitigate the race condition; instead of using `take` post setup
worker an `actionChannel` is used to create a queue to detect any first
eval action dispatched while the code path completes the worker setup.
This queue is then picked by and the action is processed and the
`actionChannel` is closed.
The baseline theory of the solution is to create a queue of any first
eval action dispatch throughout the lifecycle of the setup process but
act only when the setup is complete
The problem is not that evident in applications but in packages it's
highly reproducible as there are less api fetches to start eval
Fixes https://github.com/appsmithorg/appsmith/issues/34890
## 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/9903341349>
> Commit: 999f677e9af9c1d90201fcf124d1246ecfd79ef2
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9903341349&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 12 Jul 2024 07:07:30 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved reliability and performance of evaluation change listener by
optimizing action handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds the values to jsArguments. The logic for this is
- If the value is string then it is kept as is
- For non-strings they are wrapped with `{{ }}` do maintain the data
type integrity when evaluated.
This property is currently not used anywhere in the platform and this is
intended to be used by js modules to identify the default values of
parameters and provide support to alter then in a UI in the app.
This PR also splits `workers/Evaluation/getJSActionForEvalContext.ts` to
override in the EE for modules
PR for https://github.com/appsmithorg/appsmith-ee/pull/4612
## 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/9919551354>
> Commit: c6ab372477fb3fd2f1ce171729af4fa64ac2a487
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9919551354&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 13 Jul 2024 12:16: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
- **New Features**
- Added support for additional node types (`RestElement`,
`ObjectPattern`, `ArrayPattern`) in our AST processing.
- Introduced `addPropertiesToJSObjectCode` function to enhance
JavaScript object property management.
- **Updates**
- Enhanced `myFun2` function with new parameters and default values to
improve flexibility and usage.
- Improved `parseJSObject` function with additional parameters for
better functionality.
- **Tests**
- Added a new test suite for `addPropertiesToJSObjectCode` function to
ensure robust property management in JavaScript objects.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The CE's selector implementation has been changed to lint actions for
all non published app modes.
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.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/9906233665>
> Commit: 6b50ea5ef919b3b79e53642f63c7a9e981d8b307
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9906233665&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 12 Jul 2024 11:06: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
- **Bug Fixes**
- Adjusted linting trigger conditions to ensure linting is activated for
all modes except the published mode.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
One of the findings in usability tests is that editable fields in table
tend to confuse our users. With this PR, we attempt to remove editable
option in table cols.
<ins>Summary of code changes</ins>
This PR consists of code changes to `PrimaryColumnsControlV2.tsx` to
hide the editable checkboxes in the table.
All cypress changes just make sure that the we use the colSettings view
to make the column editable(earlier we used checkbox there.
* Removed unnecessary cypress command as well.
Fixes#33888
_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.Widget, @tag.Table, @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/9904610336>
> Commit: 890d9355b375e66e5e56a52464d8c0f19c759b9f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9904610336&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.Table, @tag.Binding`
> Spec:
> <hr>Fri, 12 Jul 2024 09:16:41 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
- **Refactor**
- Improved inline editing functionality test by updating the method used
to toggle column editability for better accuracy and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add new relic tracking spans to all fn calls in Appviewer and AppEditor
engine.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9868467158>
> Commit: 9267930a1501b1a6eaab985c714c04a4f2a5da52
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9868467158&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 10 Jul 2024 05:32:52 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced app performance tracking with added telemetry spans for key
functions.
- **Tests**
- Updated test cases to include telemetry span tracking, ensuring better
performance monitoring and validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Reverts appsmithorg/appsmith#34743
## 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/9888593641>
> Commit: eec317589c3e8ec7fa68a85811f0fb4e7e632582
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9888593641&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Thu, 11 Jul 2024 09:38:04 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved test cases for select options in the table widget for better
clarity and organization.
- Updated `SelectCell` component to use option values instead of labels
for item selection.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR added unit test for EditorTab component.
Fixes#34870
## Automation
/ok-to-test tags="@tag.Sanity, @tag.IDE"
### 🔍 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/9875712653>
> Commit: e27e1404bc19291e8bc1730fa84819e0174cec66
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9875712653&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
> Spec:
> <hr>Wed, 10 Jul 2024 14:34:11 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**
- Modified the `EditorTabs` to display a list view when all tabs are
closed and a specific condition involving `currentEntity.id` is met.
- Improved the logic for handling hamburger click events based on the
same condition.
- **Tests**
- Added test cases for rendering different views and components in the
`EditorTabs` component, covering various editor modes such as split
screen and full screen.
- **Chores**
- Added `data-testid` attribute to the `ListContainer` component for
better testability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds search functionality to the overflow list of tabs.
Fixes#34293
## 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/9873481673>
> Commit: c09ae9f03be38d8b781846aee61f05c7d61fb03c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9873481673&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 10 Jul 2024 12:35:26 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**
- Implemented fuzzy search functionality within the editor pane.
- Added a search bar to the editor pane for improved query and file
searching.
- **Improvements**
- Enhanced empty state handling to display more informative messages
when search results are empty.
- Updated button elements to use consistent test IDs (`"t--add-item"`)
for improved testability.
- **Bug Fixes**
- Refactored rendering logic in various components to ensure accurate
results based on search input.
- **Tests**
- Added comprehensive tests for the new fuzzy search functionality and
updated test assertions to align with new button test IDs.
- **Chores**
- Updated `design-system` dependency to version `2.1.43`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Separate the Sidebar Component from the various IDEs and move it to the
IDE module.
Fixes#34554
## Automation
/ok-to-test tags="@tag.IDE"
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9869212078>
> Commit: 0b685d46ba18bb98e37fde87a96c930172fc5c15
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869212078&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Wed, 10 Jul 2024 06:47:16 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 sidebar component (`IDESidebar`) managing button
states and handling interactions.
- Added `Condition` enum for better condition management with icons and
colors in the sidebar buttons.
- **Enhancements**
- Improved click handling for sidebar buttons with a new `handleOnClick`
function.
- **Tests**
- Added test cases for `SidebarButton` component to validate different
conditions and click behaviors.
- **Components**
- New React components and interfaces for managing the IDE's sidebar
functionality and state.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Adds the cURL import flow to go through a modal instead of editor level
screen. This is done to ensure the IA is correct as per IDE 2.0
standards
Fixes#32942
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9869174972>
> Commit: 6143c1c79c0bb7c6a4899fc477985d0ed23699df
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869174972&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js
>
<li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Wed, 10 Jul 2024 07:56:03 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
- **Refactor**
- Updated test case function calls and refactored imports to improve
code structure and maintainability in multiple files related to CURL
import flows.
- Consolidated and rearranged steps in CURL import flow test cases for
better readability and organization.
- **New Features**
- Introduced `AppCURLImportModal` component to handle CURL command
imports within the API editor.
- Added constants `SET_CURL_MODAL_OPEN` and `SET_CURL_MODAL_CLOSE` for
managing the state of the CURL modal.
- **Style**
- Updated selector formats and added proper commas in the `ApiEditor.js`
file.
- **Chores**
- Removed unused constants and functions related to CURL import page
paths across multiple files for cleaner codebase.
- Streamlined the management of the CURL import modal state in the
reducer and added relevant selectors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- The Bind Data menu in the query pane did not list the WDS Table Widget
when looking for existing widgets to which to bind the query.
- This PR fixes this by adding `WDS_TABLE_WIDGET` to the following
- `SUPPORTED_SUGGESTED_WIDGETS` - Because the code checks if the key
(widget type) exists in this list before listing them
- `WIDGET_DATA_FIELD_MAP` - Because the code gets the info necessary to
bind data to the widgets using this list
This PR does not effect the functionality of Fixed mode, and only
effects Anvil apps.
Fixes#34164
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 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/9854175427>
> Commit: 17bb948c02ce6e1e63e68641abd2ca4576c978cc
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9854175427&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Tue, 09 Jul 2024 09:33:31 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 the `WDS_TABLE_WIDGET` in the data binding feature,
enabling enhanced widget configurations and transformations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This code duplication meant that we missed updating the regexes to the
ones that support UUIDs, and so the caching functionality broke.
This PR removes the duplication and imports the regex constants from a
single place.
/test 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/9850040595>
> Commit: d8261a1b5ed55c7258260695fea2f2ca32dc0484
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9850040595&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 09 Jul 2024 03:00:41 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved maintainability by importing path constants from a
centralized location.
- Replaced hardcoded `pageId` and `applicationId` with variables for
better code clarity and flexibility.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
1. Add scripts for local e2e testing in the docker container.
2. Add types for cypress-image-snapshot
In this PR, I also added the following PRS as they affect screenshot
tests as well. I did this to speed up the process and unblock the team.
#34528#34546#34676#34729#34638#34639#34511
To run E2E tests locally in docker, you need to do the following:
1. Run FE locally and prepare the tests for local launch. See the
instructions
[here](https://github.com/appsmithorg/appsmith/blob/release/contributions/ClientSetup.md).
2. Run `yarn cypress:snapshot:docker:build` — this will create a docker
container with the necessary environment.
3. Run `yarn cypress:snapshot:docker
"./cypress/e2e/Regression/ClientSide/Anvil/Widgets/*_spec.ts"
updateSnapshots=false`. Here we can use the path to a specific file, or
set `updateSnapshots=true` flag to update the screenshots.
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/9844579277>
> Commit: 75f26599b149f831051fbd631aaa059084b226dd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9844579277&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 08 Jul 2024 18:37:36 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 image snapshot testing with the
`@types/cypress-image-snapshot` dependency.
- **Refactor**
- Updated test specifications by removing unnecessary
`triggerInputInvalidState()` calls.
- Reorganized and improved efficiency of image snapshot methods for
various devices.
- **Chores**
- Updated `Dockerfile` to configure the Cypress environment with
specific versions for dependencies.
- Changed import paths in `e2e.js` for better module resolution.
- **Style**
- Fixed a comment typo in Cypress plugin configuration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: unknown <vadim@appsmith.com>
## Description
**Issue**
In the table widget, the select column currently displays the value from
the dropdown when a user makes a selection, rather than the label. This
behaviour is inconsistent with the standalone select widget, which
correctly renders the label upon selection.
**Fix**
This PR addresses the inconsistency by modifying the table widget's
select column to display the label of the selected item, ensuring
alignment with the behaviour of the standalone select widget.
Fixes#26188
## Automation
/ok-to-test tags="@tag.Table, @tag.Binding, @tag.Widget, @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/9843945454>
> Commit: 330d0d3f82ea7a8769c350f7caa0714959838f12
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9843945454&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Binding, @tag.Widget, @tag.Sanity`
> Spec:
> <hr>Mon, 08 Jul 2024 18:21:02 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 the `SelectCell` component to use the `option.label` instead
of `option.value` for item selection.
- **Tests**
- Revised test descriptions and assertions for select options in Table
Widget to reflect the new functionality of using labels as values in
select cells.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
The regex used to identify if an API needs environment information,
doesn't support UUIDs. This PR adds that.
Ideally, we should pass this information from where we're calling
`Api.get()`, not via an interceptor that matches certain very specific
API paths. Especially since the regex isn't matching generic paths. Add
to that, headers is the wrong place for things like this, because this
is essentially a "query param", it's a parameter to the query in the GET
API call, on equal footing with `datasourceId`. The generic Axios
interceptors being aware of the concept called environments, itself is
an abstraction leak, in my opinion. Problem for another day though.
/test 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/9850313501>
> Commit: e6348e0685c1cc79d8932b5fcaa35d67e635186b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9850313501&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 09 Jul 2024 03:33:12 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Improvements**
- Enhanced dynamic route matching for data source structures and
triggers, making the application more flexible and robust.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In PR #34655, the "Generate Page" button was removed from the datasource
preview page (Footer). However, the `DSFormHeader` for other datasource
types still included this button, leading to inconsistencies across the
application.
This PR addresses the issue by removing the "Generate Page" button from
the DSFormHeader for all datasource types, ensuring uniformity in the
datasource preview pages and aligning with the changes made in PR
#34655.
Fixes#34771
## 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/9836680996>
> Commit: bde150dd6010e110f32288a52e39657f96945704
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9836680996&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> <hr>Mon, 08 Jul 2024 09:44:32 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 feature flag to control the visibility of the "generate
page" button in the DataSource Editor.
- **Tests**
- Added a new test case to ensure the "generate page" button is hidden
when the `release_drag_drop_building_blocks_enabled` feature is enabled.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#34616
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved row selection in the table widget to ensure consistent
behavior when clicking and selecting rows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9807025998>
> Commit: 0886840489bcd17e9eba4e8626456b095f48e52d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9807025998&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> <hr>Fri, 05 Jul 2024 10:57:35 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
evalTreeWithChanges is sending a redundant property unevalTree in the
payload, we should remove this property to reduce the serialisation cost
of including this property in the payload.
Fixes#34766
> [!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 -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9807127090>
> Commit: 73e226d70644bd0995e5c1c0b5b1d9c73e93e83a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9807127090&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts
> <li>cypress/e2e/Regression/ClientSide/Workspace/MemberRoles_Spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Workspace/ShareAppTests_Spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Fri, 05 Jul 2024 11:46:05 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
- **Refactor**
- Improved the handling of `unevalTree` by accessing it from
`unEvalAndConfigTree` instead of directly from the message data in
message handling logic.
- **Tests**
- Updated tests to reflect the removal of the `unevalTree` property and
related assertions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR fixes the intermittent issue in snowflake, where if we import
the app containing snowflake and if we open the datasource it in edit
mode, password field was not there.
Root cause:
When we are on slow 3g and when we don’t wait for datasources to load in
reconnect dialog and quickly go to application, the authentication
object does not get set, which causes snowflake password conditions to
break and it does not show up.
We tried by simulating slow 3g on all environments and were able to
reproduce it
Steps to test:
- We can try importing following app json and simulating slow 3g in
network tab
- Once app is imported, when we see reconnect modal, quickly click on go
to application before the datasources are loaded in the modal
[Snow
issue_aparna.json](https://github.com/user-attachments/files/16107584/Snow.issue_aparna.json)
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9805844586>
> Commit: 9868be55568774565f9c675d8cec92b12eb55d70
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9805844586&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> <hr>Fri, 05 Jul 2024 09:38:19 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 comparison operation `DEFINED_AND_NOT_EQUALS` for
form controls.
- **Bug Fixes**
- Updated the Snowflake plugin to use `DEFINED_AND_NOT_EQUALS` for
better validation of authentication type configurations.
- **Improvements**
- Enhanced form control logic to support more precise comparison checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
This PR makes the following changes to prepare for the Anvil Alpha
release
- Add a toggle to the applications page header that allows us to toggle
the Anvil feature flag from the UI.
- Enable the above toggle if the toggle feature flag is enabled
- When the toggle is enabled the following changes occur in the UX
- Import application via Git is disabled and a callout is shown to the
user
- Git features are unavailable for users in Anvil applications
- Copying and pasting widgets between two different layout systems is
disabled and a warning message is shown to the user
- Partial import export of widgets between two different layout systems
is disabled and a warning message is shown to the user
- CRUD page generation is disabled from datasources
- Anvil applications and classic applications are separated into their
own sections in the workspace.
- In case any of the above sections are empty, an appropriate message is
displayed in the empty section
### Screenshots




### Other details
- Toggle feature flag - `release_anvil_toggle_enabled`
- Anvil feature flag - `release_anvil_enabled`
Fixes#34578Fixes#34576Fixes#34575Fixes#33718
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9793128338>
> Commit: 09401272c1d52c915aee3b68925406f2f5f962ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9793128338&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
<!-- 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 Anvil toggle functionality to the page header.
- Introduced layout compatibility checks for pasting widgets.
- **Enhancements**
- Updated widget paste action to verify layout system compatibility.
- Improved handling and processing of user-uploaded JSON files for
widget import.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
https://github.com/appsmithorg/appsmith/issues/34591
## Description
Making _Allow filtering_ option false by default.
<img width="798" alt="Allow filtering off"
src="https://github.com/appsmithorg/appsmith/assets/121817440/8ac64773-2385-433d-96fa-0a90080e2462">
Fixes#34591
_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.Widget, @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/9795462304>
> Commit: e0c1e8376b702f13b9640c880cf5606af070a420
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9795462304&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table, @tag.Widget, @tag.Binding, @tag.Sanity`
<!-- 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**
- Filtering is now disabled by default for the `TableWidgetV2`.
- **Tests**
- Updated test scripts to enable filtering for `TableWidgetV2` in
multiple scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Jacques Ikot <jacquesikot@gmail.com>
## Description
Overflow list view changes was reverted because of Anvil failures in EE.
This PR add the changes back.
Fixes#33432
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9802067318>
> Commit: 18b7a5780abca4e5813d9089c31a01a31f1d348a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9802067318&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Fri, 05 Jul 2024 03:11:20 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced several new React components (`FileTab`, `AddTab`, `List`,
`ScreenModeToggle`, `EditorTabs`) to enhance the IDE tab management and
user interaction.
- **Bug Fixes**
- Improved drag-and-drop (DnD) simulation logic by using `realMouseMove`
method.
- **Refactor**
- Simplified and refactored the `FileTabs` component, improving its
encapsulation and rendering logic.
- Enhanced state and props handling across various tab components and
hooks.
- **Tests**
- Updated test IDs and test logic to ensure consistency and correctness
for tab interactions and states.
- **Style**
- Updated styled components, replacing tab-related styles with
list-related styles to improve UI consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The PR adds a new prop to be passed to the JSObject editor to show a
banner or notification. This also adds uniform styling to the other
editors
PR for https://github.com/appsmithorg/appsmith-ee/pull/4485
## Automation
/ok-to-test tags="@tag.Datasource, @tag.IDE, @tag.JS"
### 🔍 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/9759655417>
> Commit: 8bc7746531e2ad1f4c84d81cc3092a3042b55a95
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9759655417&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource, @tag.IDE, @tag.JS`
<!-- 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 styled notification components across various editor forms
to enhance user alerts and notifications.
- **UI Enhancements**
- Improved the visual presentation of notifications within the Editor by
wrapping them in a new styled notification wrapper.
- **Bug Fixes**
- Ensured that notifications are conditionally displayed, improving the
clarity and user experience in the Editor forms.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Based on [this
discussion](https://theappsmith.slack.com/archives/C02JT9CSE6L/p1720083186027799)
we are changing
[this](https://github.com/appsmithorg/appsmith/issues/34386) behaviour
to not apply on Anvil Layouts
## Automation
/ok-to-test tags="@tag.Anvil, @tag.Widget"
### 🔍 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?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved logic for widget tags based on the new `isAnvil` layout flag.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Update the selfReference autocomplete rule to show completion for the
entity's other property when writing JS in one of its property.
Fixes https://github.com/appsmithorg/appsmith/issues/34684
## Automation
/test js
### 🔍 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/9780079455>
> Commit: 03eb92fdda61a917829be20fb6f5d99562f162f3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9780079455&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
<!-- 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 accuracy of autocomplete suggestions by refining
self-reference detection logic.
- **Tests**
- Added new test cases to verify proper blocking of self-referencing
completions.
- Updated existing tests to include `propertyPath` in entity sorting
validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
When a new evaluation cycle starts the uneval tree goes through a
processing for updating the js objects in the right format. But the
update condition depends on values present in `JSObjectCollection`.
Due to the nature of evaluation for modules; when a JSModule is opened
in an editor then the JSModule in evaluation is treated as a jsobject
but when a different JSModule is opened then the previously opened
JSModule is treated as a JSModule instance. Since in one of the eval
cycle the first JSModule was treated as an JSObject so it's functions
made it's way into the `JSObjectCollection` and now when it was treated
as `JSModuleInstance`, due to it's functions present in
`JSObjectCollection` during previous eval cycles; it's values gets
altered which is undesirable.
The change here dictates that if an entity is a JSObject, then only
proceed for any alteration else the dataTree for the entity stays
intact.
PR for https://github.com/appsmithorg/appsmith-ee/pull/4547
## 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/9707356261>
> Commit: f242dfa22d6a7e29dab7f3532e3697e9b9282f78
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9707356261&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: ``
<!-- 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**
- Enhanced stability and control flow in the `DataTreeEvaluator` to
prevent issues when processing non-JSAction entities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Controls the collapsible sections of the Widget Add pane. This will
ensure we do not show all the widgets for add when a new user is
exploring for the first time. Once the users adds a widget, the other
sections opens up automatically.
Also removes List and JSONForm widgets from the SuggestedWidget tag
Fixes#34386
## Automation
/ok-to-test tags="@tag.Widget, @tag.IDE"
### 🔍 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/9777505836>
> Commit: a604723af91330158f513764b45051d8be75dc6c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9777505836&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.IDE`
<!-- 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**
- Sidebar and tag groups now dynamically open based on widget presence.
- **Improvements**
- Enhanced initial open state control for tag groups.
- Updated widget tag assignments to prioritize layout and display
widgets.
- **Bug Fixes**
- Corrected widget tag selectors to ensure accurate UI element
targeting.
- **Tests**
- Refactored and updated test cases for widget sidebar functionality and
UI consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Reverting https://github.com/appsmithorg/appsmith/pull/33724
temporarily, until we gain more confidence.
[Slack
conversation](https://theappsmith.slack.com/archives/C040LHZN03V/p1719997989677959).
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved server configuration by removing unnecessary custom object
mapper settings.
- Optimized data source handling by cleaning up authentication object
manipulations.
- **New Features**
- Introduced a new method for future strict type checking on the server.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
Remove the "Generate new page" button from the datasource review page
and make the "New Query" button a primary button. Tests related to the
removed generate CRUD page feature have been removed.
Fixes#31801
## 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/9772204191>
> Commit: 1d77326f4674abe6143d5c7031f91130a4bf5598
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9772204191&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
<!-- 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 feature flag to conditionally show the `Generate Page`
button based on the drag and drop building blocks setting.
- **Tests**
- Added tests to verify the rendering of components and buttons based on
feature flags and plugin types.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes release blocker issue:
https://github.com/appsmithorg/appsmith/issues/34654
Fixes #`Issue Number`
_or_
Fixes [`Issue
URL`](https://github.com/appsmithorg/appsmith/issues/34654)
> [!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/9773245154>
> Commit: d21b7eeb4724d584c65c88bfd029da200c893360
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9773245154&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved handling of authentication status in data source management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
This pull request refactors the sourceData handling in the SelectWidget
component. It introduces a dynamic property path for the sourceData in
the SelectWidget configuration, allowing it to be passed as a JSON
string.
This change ensures that the source data matches the sample data passed
for the widget configuration, enabling the switching back of the JS
toggle button.
Additionally, it fixes cypress tests: opening of the prop pane in JS
mode.
Fixes#34568
_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.Widget, @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/9758347627>
> Commit: 01e5b4fba240667eaa0818330047489d94c01a46
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9758347627&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.Select, @tag.Binding`
<!-- 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 stability of test scenarios by ensuring JavaScript mode is
toggled appropriately.
- **Tests**
- Updated test cases to include JavaScript mode toggling for more
accurate test outcomes.
- Renamed and restructured test files to enhance clarity and
maintainability.
- **New Features**
- Enhanced `SelectWidget` to initialize `sourceData` with a stringified
array and made `sourceData` dynamically configurable.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes a "weird resizing bug" described in related issue.
Fixes#33483
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9683985775>
> Commit: 4fe7b5ffb1e98f9b82f6198790554131f95404ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9683985775&attempt=6&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: ``
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/BugTests/Binding_Bug28731_Spec.ts
>
<li>cypress/e2e/Regression/ClientSide/OneClickBinding/JSEnabledByDefaultExperiment_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/OneClickBinding/SelectWidget/mongoDB_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/OneClickBinding/SelectWidget/postgres_spec.ts
</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
<!-- 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
- **Refactor**
- Improved the app's layout resizing performance by optimizing debounced
functions and updating the ResizeObserver usage for better
responsiveness.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds backwards compatibility for older snowflake datasources so
that we wont need migration.
With new updates on snowflake plugin for key pair authentication, we
have introduced a new field in authentication object called
authenticationType, this field is responsible for telling us whether
it's a basic authentication or key pair authentication. For older
datasources, this field wont be there, so in order to ensure that those
datasource continue to work smoothly, we have added a fallback
mechanism, where if any datasource does not have authentication field,
it will be considered as basic auth and we will set its properties
accordingly. This PR adds that support
### Steps to test:
1. Create a snowflake datasource along with queries on app.appsmith.com
2. Attach these queries to table widget so they run on page load
3. Export this app and get json
4. Import this json on the DP of this PR, the queries should work
Fixes#34627
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Datasource"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9759249212>
> Commit: f68972710918b450d989c1d28a9286a397fc08bd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9759249212&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
<!-- 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 backward compatibility for Snowflake plugins by handling
cases where `authenticationType` is not present in older datasources.
- **New Features**
- Improved datasource configuration by cleaning the authentication
object in the `DatasourcesApi`.
- **Refactor**
- Simplified authentication type handling by removing unused
`USERNAME_PASSWORD` and `KEY_PAIR` enums in `DBAuth`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Reverts appsmithorg/appsmith#34348
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced button display conditions based on plugin permissions in the
Data Source Editor.
- **Bug Fixes**
- Corrected logic for feature flags in Data Source Editor to ensure
consistent button behavior.
- **Refactor**
- Improved import structure and code readability in Data Source Editor
components.
- **Chores**
- Removed outdated feature flag checks for
`releaseDragDropBuildingBlocks` across multiple files.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Chang Anvil highlight behaviour:
- Chang the behaviour for an empty canvas
- Fix the behaviour inside the zone
https://github.com/appsmithorg/appsmith/assets/11555074/9f4697ec-b84a-4d3c-a568-42cf2006528fFixes#33443
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/9758888261>
> Commit: 40f63c19a687e532f5698ceaabba69a281d5c2c8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9758888261&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved padding and dimension calculations for better highlight
accuracy in the canvas editor.
- **Bug Fixes**
- Adjusted highlight width calculations for empty canvases.
- Corrected compensators for widget alignment to ensure precise
positioning.
- **Tests**
- Updated test cases to reflect changes in highlight width calculations
and widget dragging behavior.
- **Refactor**
- Renamed variables and adjusted identifiers for clarity and consistency
in highlight tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Remove the "Generate new page" button from the datasource review page
and make the "New Query" button a primary button. Tests related to the
removed generate CRUD page feature have been removed.
Fixes#31801
## 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/9644141773>
> Commit: b1671022d7eee6a676103281dc2e7f5df8bfd513
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9644141773&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
<!-- 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**
- Removed outdated test cases that were no longer relevant or causing
issues in MongoDB and S3 CRUD operations.
- **New Tests**
- Added `HideGeneratePageButton.test.tsx` to verify the visibility of
buttons based on feature flags and user permissions.
- **Refactor**
- Improved code structure by reordering imports and simplifying logic in
various datasource-related components.
- Removed deprecated methods and functions related to page generation
from datasource components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This reverts commit 519b53ea9b.
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.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/9755650204>
> Commit: 3e273b60c9ee9cb9af559dc8071b1c7b9c9b9e47
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9755650204&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
<!-- 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
- **Refactor**
- Improved tab closing interaction in the IDE pane.
- Updated components for better consistency and performance in the
Editor.
- Renamed and reorganized components for clarity.
- **New Features**
- Added `FullScreenTabs` component for a more immersive tab management
experience.
- **Style**
- Enhanced styling for tabs and related UI elements to improve user
experience.
- **Tests**
- Refined test cases for better accuracy and reliability.
- **Performance**
- Enhanced selector functions for better memoization and performance in
the IDE.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
**/test binding**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9754334718>
> Commit: 2c67d23abd75ce763c6e8eac2b1d9582bccca875
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9754334718&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Binding`
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved the internal handling of `sourceData` within the Select
widget for better performance and maintainability.
- **Tests**
- Updated test cases for the Select widget to reflect the new handling
of `sourceData`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
There's a few places in Cypress tests that are trying to extract the
page ID using `.split`, especially with just the path information,
instead of the whole URL. So this PR changes the extraction
implementation to use a regex, to support all three cases we need:
1. Full absolute application+page URL.
2. Just the path of an application+page URL.
3. Just the path of an application with a custom slug.
4. Full absolute application with a custom slug. (Supported, but we
don't need this today).
We've also fixed the URL parsing for the (very) old application URLs
that didn't use slugs in the URL at all. This was making
`FocusEntity.test.ts` fail.
Fixed that test as well as improved it's error reporting.
Before this PR:

After this PR:

No conflicts to EE.
/test 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/9713573983>
> Commit: 49edbce5ae85ee7fe9f4d2df05e2933347ddb3f4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9713573983&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: ``
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved URL handling by centralizing page ID extraction logic across
various tests and components.
- Updated deprecated path constants to include ID extraction patterns
for better consistency.
- Enhanced code readability and maintainability by moving page ID
extraction to a helper method.
- **Tests**
- Modified test cases to dynamically set `applicationId` and `pageId`
instead of hardcoding values, ensuring more flexible and maintainable
test scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds new authentication method for snowflake: Use of public and
private keys to authorise a snowflake database.
Snowflake provides a couple of authentication mechanisms in order to
authenticate the DB. Currently appsmith only provides a way to authorise
using username and password. This PR adds support for private key
authentication, where by user can set a public key on their DB and they
can use corresponding private key in appsmith to authorise the
datasource.
In snowflake DB form, we have added a new field for authentication type
which has two options: Basic and Key pair. Basic will allows us to
authenticate using username and password. Key pair will provide us a way
to upload the private key along with input field for adding passphrase
(In case of encrypted private key).
More info: https://docs.snowflake.com/en/user-guide/key-pair-authhttps://github.com/appsmithorg/appsmith/assets/30018882/99774925-12a3-4cc0-af0a-614c3574cdc3
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.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/9743830603>
> Commit: cb64fffc9e181558525e020a4597b616eeacea7a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9743830603&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
<!-- 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 Snowflake integration with improved connection creation and
authentication handling (key pair and basic auth types).
- **Bug Fixes**
- Fixed issues related to handling authentication objects within
datasource configuration to ensure more reliable connections.
- **Documentation**
- Added new error messages for passphrase requirements and incorrect
passphrase or private key for encrypted private keys.
- **Tests**
- Updated tests to verify the correct setting of authentication types in
the Snowflake plugin.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
This PR makes sure that the initial value of `isLoading` in the settings
reducer is set to true.
This flag is used to conditionally render the loading component and the
AdminSettings component in
`app/client/src/pages/AdminSettings/index.tsx`. This change makes sure
that the Admin Page components are not mounted and unmounted on initial
render. The mouting and unmounting used to happen earlier because the
flag switched from false => true => false.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9737924972>
> Commit: 553b867bfa7a72d97bd54d4ef10f5ce9fee665e4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9737924972&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
<!-- 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 initial loading state of settings to enhance user experience
during app startup.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add dynamic property path for sourceData in SelectWidget.
Fixes#34568
_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.Widget"
### 🔍 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/9712372976>
> Commit: c5521e46382d448715183862aededc142136db0a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9712372976&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
<!-- 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 the Select Widget with a new property to support dynamic
property paths.
- **Tests**
- Added new tests to validate the dynamic property paths functionality
in the Select Widget.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This is a code split PR for [EE
change](https://github.com/appsmithorg/appsmith-ee/pull/4536) which
fixes rename of functions inside of a js object.
Fixes [#34470](https://github.com/appsmithorg/appsmith/issues/34470)
## Automation
/test 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/9690260557>
> Commit: 6da583fea14638c183a6b81d61c1870f7ea694f5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9690260557&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
<!-- 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 an optional `workflowId` field to enhance the functionality of
JavaScript actions and workflows.
- **Tests**
- Updated tests to include the new `workflowId` field.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
RCA:
Click on the dropdown was not working intermittently
Solution:
updated the flow,
1. Wait for the destination dropdown
2. Click on the destination dropdown
3. Assert the branch name visible post dropdown has opened
4. Click on the destination branch
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Enhanced the `mergeBranch` process in GitSync to ensure better
stability and accuracy by adding assertions for element appearances,
disappearances, network status, and the presence of a destination
branch.
- **Tests**
- Switched limited test spec from `Fork_Template_spec.js` to
`GitSyncedApps_spec.js` and added `GitBugs_Spec.ts` for improved test
coverage and accuracy.
- **Refactor**
- Changed `className` attribute to `data-testid` in the `Select`
component within the GitSync merge tab for improved testing and
readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com>
## Description
This pull request updates the BuildingBlockSagas module to handle nested
object value replacement in queries.
Previously, the module only replaced values at the top level of the
object, but now it correctly handles nested values as well. This
improves the accuracy and reliability of the queries.
The changes include adding a new utility function,
`accessNestedObjectValue`, which is used to access and update nested
values in the `actionConfiguration` object.
Additionally, the `updateWidgetsNameInNewQueries` function has been
modified to use this utility function when replacing widget names in
queries.
Overall, these changes enhance the functionality of the
BuildingBlockSagas module and ensure that queries are properly updated
with the new widget names."
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.Widget"
### 🔍 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/9698473149>
> Commit: 6e82692e4cbf8d2e9630499006aa2e0f8adbfdd3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9698473149&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
<!-- 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
- **Refactor**
- Enhanced internal logic for updating nested object values in widget
names.
- **Tests**
- Added new test case for handling `null` or `undefined` inputs in
utility functions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Truncate the title in tooltips if it exceeds 1000 characters to improve
readability.
Fixes#23156
_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.Widget"
### 🔍 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/9697818492>
> Commit: a4007cb6372e7872b1c6472efdabee1a4932a83c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9697818492&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved tooltip functionality to automatically truncate text that
exceeds a set character limit, enhancing readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
When multiple blocks of the same type are dropped unto the canvas right
after each other, the query body of the newly created query does not
update the binding to the latest version of the widgets.
## Solution
We have gotten the newlyUpdatedQueries from the block API, then we
update the actionConfiguration.body and the jsonPathKeys to match the
updated binding name for the block and implement the action in the local
state.
Fixes#34237
## Automation
/ok-to-test tags="@tag.Widget"
### 🔍 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/9644500854>
> Commit: 562ad23b485afbd0c7b695b0c1aa8e8cc01c94cb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9644500854&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
<!-- 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 functionality for saving building block widgets to the store.
- **Tests**
- Updated and added new test cases for pasting building block widgets.
- **Bug Fixes**
- Fixed issues with the import and usage of action types and selectors
in the building block sagas.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Since custom widgets rely on react delievered from
`https://cdn.jsdelivr.net`, it can't work in airgapped edition.
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.Widget"
### 🔍 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/9692258525>
> Commit: bf3b40a5c3c51a2271347967516a53655721f7a2
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9692258525&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
<!-- 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**
- Custom widgets will now hide specific cards if the environment is
air-gapped.
- **Tests**
- Updated test tags for custom widgets to exclude tests in air-gapped
environments.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
These changes add evalTreeWithDiff to evalWorkerAction. Using this
method it will be possible to send the unevalTree and configTree updates
from mainThread to trigger evaluation.
- This will skip diffing complete unEvaltree
### Next steps after this PR
- [ ] Rename EvalTreeWithChanges to evalTreeWithDiff
- [ ] Generate Diff instead of updatedValuePaths for the current
evalTreeWithChanges references.
- [ ] Handle evalTreeWithDiff for
- [ ] JSObject updates
- [ ] updateDependencyMap
Fixes #
## Automation
/test js
### 🔍 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/9684706533>
> Commit: 3de988af5da9900f4e589a008d28296d05d17f25
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9684706533&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
<!-- 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 widget evaluation logic and improved handling of dynamic
bindings and dependencies.
- **Bug Fixes**
- Corrected type handling in various evaluation functions to improve
stability and accuracy.
- **Tests**
- Updated test cases for widget property setters to include additional
tags for better categorization.
- **Refactor**
- Streamlined function signatures and improved type safety across
evaluation utilities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Currently, if the incoming request body contains fields that aren't
recognized by the backend, we just ignore them, and deserialize what we
_can_. This has lead to subtle bugs and wasted a lot of developer time
in the past, and added little value in return.
Most recently, with application creation, now fixed in
https://github.com/appsmithorg/appsmith/pull/33722.
Another one, for action creation, client sends this in `eventData` field
of the request body:

But the class defined for `eventData` is this:

Clearly isn't working.
This PR enabled the `FAIL_ON_UNKNOWN_PROPERTIES` setting only for the
deserialization of HTTP request payloads. It shouldn't have impact on
other deserializations like those for Git, and those that load resource
files. Primarily to limit the scope.
This should also bring in some much-needed type strictness to the client
as well. So far, server has been lax in accepting just any fields in the
incoming request body, so client was able to afford being lax about the
object that was sent up.
We're enabling this restriction only for CE currently. Will be opening a
similar PR on EE and once all tests pass there, we enable for EE as
well.
Depends on #33728#33730#33731#34366#34405#34446#34473#34506
Run No. 1
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9685619413>
> Commit: 04e225f91a5549bd41f952ea85fa57483b1b0588
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9685619413&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: ``
**/test 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/9690185000>
> Commit: 29da8b48a36772bebc188f6173ea07d6acfd9a3c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9690185000&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: ``
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Added `certificateType` property to datasources for enhanced SSL
configuration options.
- **Enhancements**
- Improved JSON deserialization behavior for better data handling and
flexibility.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9678081244>
> Commit: d73f2d7f37c9d62ba1ca622b78d9a0ce4d0e3db8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9678081244&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- 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 comprehensive test cases for Currency Input, Phone Input,
and General Input Widgets in the Anvil editor covering Canvas, Preview,
and Deploy modes.
- Added complex layout structures for Currency and Phone Input Widgets
in the "MainContainer" canvas widget.
- **Enhancements**
- Implemented debouncing for validation status and error message
handling in the Currency Input Widget to improve timing accuracy.
- Added `defaultValue` property to Currency Input Widget configurations.
- Corrected typos and improved clarity in widget property names and
validation logic.
- **Bug Fixes**
- Fixed validation status typo in Phone Input Widget.
- **Refactor**
- Reordered static property declarations in Input Widgets for better
code organization.
- Modified method access controls in AnvilSnapshot for external usage.
- **Tests**
- Added snapshot testing for Currency, Phone, and General Input Widgets
within the Anvil editor.
- **Chores**
- Added a new method `Createpage(pageName: string)` to streamline page
creation in tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Part of #33724. This is fix for `JSEditorContextMenu_Spec`.
/test ide
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved payload handling for `createJSCollection` and
`copyJSCollection` methods to better manage nested objects.
These changes optimize data handling within the app, ensuring smoother
and more reliable performance when creating or copying JavaScript
collections.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9679862281>
> Commit: 50ee7d6bf036e101738d2ff9f54ffdef7c5e180b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9679862281&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
<!-- end of auto-generated comment: Cypress test results -->
Part of #33724. Fixes for JSObject API calls and
`EvaluatedValuePopUp_spec` test.
**/test sanity binding**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9665092474>
> Commit: d48cd19bfc2165bd06d605608ee632faa042a820
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9665092474&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Binding`
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved the structure of API request payloads for JS collections,
ensuring more efficient data handling.
- **Bug Fixes**
- Removed unnecessary parameters from dynamic value fetching functions,
streamlining the process and reducing potential errors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Part of #33724. The server uses only `uidString` for this API endpoint,
which is all we should be sending. The server accepts a few other fields
as well today, but doesn't use them. That'll also be fixed in the
future, to only accept strictly what's needed.
/test sanity js
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9672660446>
> Commit: a61fa21404ab4ab7fd450f2db9f256dfe86f2f4d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9672660446&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.JS`
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved the `updateLibrary` method to send specific payload data,
enhancing API reliability.
- **Logging Improvements**
- Updated log messages in the `removeJSLibFromApplication` method to
exclude version information for better clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR implements the new design for the list view.
Fixes#33432
## Automation
/ok-to-test tags="@tag.Sanity, @tag.IDE"
### 🔍 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/9660135881>
> Commit: fb8addb5a6fae5c9d68c0164d8332105bfa88ec9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9660135881&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
<!-- 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 `AddTab` component to add new JavaScript or Query tabs.
- Added `ScreenModeToggle` for switching between full-screen and
split-screen modes.
- Added `FileTab` component for improved tab interactions.
- Introduced `List` component for conditional rendering based on editor
state.
- **Bug Fixes**
- Corrected test assertions and tab names in `JSRender.test.tsx` and
`QueryRender.test.tsx`.
- Fixed tab closure and interaction flow in
`IDE_Add_Pane_Interactions_spec.ts`.
- **Refactor**
- Simplified selector functions and updated component imports for better
readability and performance.
- **Tests**
- Updated tests to include `currentEntity` props and use
`sanitizeString` for tab titles.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR fix the invalid URL issue after deleting the last datasource.
This is caused by the focus retention delete order. Whenever a focus
history is being deleted, it should be done after redirection to the new
URL.
Fixes#33994
## Automation
/ok-to-test tags="@tag.IDE, @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/9657584656>
> Commit: 010092ee7e177a8244912b45962cb79ff210ec29
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9657584656&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE, @tag.Datasource`
<!-- 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 deletion process of data sources to ensure proper
handling of focus history and redirects.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Part of #33724.
This PR fixes a few more APIs to pass just the fields that the server
expects, and nothing more.
/test sanity datasource
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9648180689>
> Commit: 874f9f1a721108d36dae5719fa842d595bd9281d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9648180689&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Datasource`
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved payload structure for `updateAction` and `moveAction` methods
to enhance API request consistency.
- Updated `updateApplicationTheme` method to refine the payload before
making API calls.
- Modified `generateTemplatePage` method to update the request payload,
improving API interaction.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
* This pull request refactors the function
`handleButtonDynamicTriggerPathList` to
`handleWidgetDynamicTriggerPathList` in order to make it more generic
and handle dynamic trigger paths for all types of widgets.
* Additionally, the pull request moves the function
`handleIfParentIsListWidgetWhilePasting` out of
`handleSpecificCasesWhilePasting` to handle compound cases where the
parent of the current widget needs to be checked.
* Improves the nested object value replacement logic in
`PasteWidgetUtils`.
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.Templates, @tag.Widget, @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/9656587968>
> Commit: 4b821787d7ab5ad302b458c726c632b1e43b49e4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9656587968&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Templates, @tag.Widget, @tag.Sanity`
<!-- 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
- **Refactor**
- Simplified handling of pasting widgets by consolidating functions.
- Improved logic for handling widget pasting scenarios.
- Reorganized function names for better clarity and consistency.
- **Bug Fixes**
- Enhanced the handling of widgets when their parent is a list widget
during pasting.
- **Tests**
- Updated test cases to reflect changes in widget pasting logic and
function names.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Jacques Ikot <jacquesikot@gmail.com>
Part of https://github.com/appsmithorg/appsmith/pull/33724. This is an
effort to harden the server in terms of what request payloads are
acceptable.
**/test all**
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced API request payload handling for creating actions to include
additional properties, improving data integrity and server-side
validation.
- **Improvements**
- Refined data manipulation and payload structures in datasource-related
API requests for better compatibility with server requirements.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9626214547>
> Commit: fe5db45aeb916b176aec3ded06f1a9da1bf08898
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9626214547&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: ``
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/Widgets/RTE/RichTextEditor3_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Widgets/RTE/RichTextEditor_1_spec.js
>
<li>cypress/e2e/Regression/ClientSide/Widgets/RTE/RichTextEditor_2_spec.js
</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
<!-- end of auto-generated comment: Cypress test results -->
## Description
Fix modal onClose method in edit mode
Fixes#33861
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/9643445303>
> Commit: 179602e52dcc2cdcaeecc5f67af5bc4ac12ee431
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9643445303&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- 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 modal widget behavior to ensure it checks for
disableWidgetInteraction before closing, preventing unwanted closures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
[](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=9GEnyEC)
## 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#33740
_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.Anvil"
### 🔍 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/9643638292>
> Commit: bcc4bbddaa50b0be16e41a3a51db4f6abe732e79
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9643638292&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- 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 test cases for Anvil modals, covering interactions like
opening, closing, drag and drop operations, and handling modal
functions.
- **Bug Fixes**
- Enhanced testing capabilities with `data-testid` attributes for better
identification and testing of components, particularly in detached
widget drop areas.
- **Refactor**
- Updated the `Modal` component to use `dataAttributes` instead of
`size` prop to streamline attribute handling.
- Dynamic generation of modal class names based on properties for better
styling and consistency.
- **Style**
- Adjusted styling for SVG elements within the `EntityExplorer`
component, specifically modifying the height and width properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
- Remove click event from Stats
- Remove validation section from SwitchGroup
- Fix Inline button variant for added button
- Fix paragraph default text
- Fix inputs placeholders
Fixes:
#34189#34002#33753#33242#33243#33186#32509
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 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/9615117095>
> Commit: 15420c10925a9315375f7da9ba6fa6bfd7b9fb29
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9615117095&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Updated the placeholder text for input fields to provide more concise
and specific guidance.
- **Bug Fixes**
- Adjusted button variant naming for better consistency.
- Improved text in `WDSParagraphWidget` to emphasize understanding
mysteries.
- **Refactor**
- Removed unnecessary `onClick` prop from `StatsComponent`.
- Simplified `getWidgetView` function in `WDSStatsWidget`.
- **Chores**
- Cleaned up redundant validation and required properties in
`WDSSwitchGroupWidget`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Going through EE repo to check if there are any changes in the repo
(outside EE folder) that do no exist in the CE directory. These changes
are harmless and seem to have been added to EE only by mistake. This PR
will ensure the changes are copied here as well to maintain the sync
## Automation
/ok-to-test tags="@tag.All"
### 🔍 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/9642308929>
> Commit: 825650372300260c39ae7b5b2ce91d2178dfa8c9
> Workflow: `PR Automation test suite`
> Tags: ``
<!-- 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 CDN URL declaration for improved asset management.
- Added a new function to check if the app mode is in "Published" state.
- **Style**
- Updated global styles to include new `.ai-window` class in popovers.
- Enhanced cursor styling in the `CopyUrlForm` component.
- **Bug Fixes**
- Corrected an attribute name in the `ReconnectDatasourceModal`
component.
- **Performance**
- Added caching for tenant configuration to optimize loading times.
- **Chores**
- Set `__webpack_public_path__` to support CDN usage in the Enterprise
Edition environment.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
[](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=Pmk6xa9)
## 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#33981
_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.Anvil"
### 🔍 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/9639877981>
> Commit: 311f59c5d6cff265ea985c13f9891193866304d6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9639877981&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- 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
- **Tests**
- Introduced test cases for adding and moving widgets within a canvas
layout.
- **New Features**
- Added functionality to generate mock data for a layout with two
sections, each containing a zone widget.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Capturing the telemetry of webworker's allPaths and
unEvalTreeWithStringifiedJSFunctionsDiff computation.
#34397
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/9613641914>
> Commit: b3d679a8a079fc5c3febf7b4855916f32c982512
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
<!-- 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 profiling for key operations to monitor performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The request key used to store the mutex for prefetch request was
including all header keys. The prefetch request created by the service
worker only had one key (branchname) but the request initiated by the
client had more headers. Because of this mismatch in keys the request
was missing the cache.
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.All"
### 🔍 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/9612628976>
> Commit: e9c4a982eddded5dce31005365978b4729dadba2
> Workflow: `PR Automation test suite`
> Tags: ``
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved request key generation by including specific headers,
enhancing cache performance.
- **Tests**
- Added a test case to verify the new request key generation logic based
on headers.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Revert to passing hook as a prop for EE compatibility.
Fixes#32982
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 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/9600106265>
> Commit: 042f94586b64efc1b8224059ceebddb0a4a9f0e6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9600106265&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
<!-- 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 navigation menu generation in the editor with improved data
management.
- **Refactor**
- Updated the navigation menu logic to use a new function, improving
code maintainability and data handling.
- **Bug Fixes**
- Fixed inconsistencies in the navigation menu across different
components in the editor.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced test cases for Anvil Button Widgets, including Canvas,
Preview, and Deploy modes.
- **Bug Fixes**
- Updated CSS and HTML selectors for better element targeting and
testing reliability.
- **Style**
- Improved styling logic for buttons in the InlineButtons component.
- **Chores**
- Added `data-testid` attributes for better test targeting.
- Refactored code for string concatenations and URL constructions in
DeployModeHelper.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9597157402>
> Commit: c551705fe01aace94962fcc7fa91dff253136721
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9597157402&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>