## Description
This is an extension of #31272, type fixes within the test case has been
made.
Fixes#31272
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8451378874>
> Commit: `de31e9e0c671f65572af33bd0cbb773bfe5b8767`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8451378874&attempt=4"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 evaluation process for widget updates, enhancing the
handling of undefined values, function properties, and serialization
issues.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Avoids widget selection on modal close when widget selection is blocked.
Fixes#32118
## Automation
/ok-to-test tags="@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 -->
This removes the `appsmithctl migrate` command which can migrate an
Appsmith instance from on EC2 instance to another, using SSH. Why are we
removing it?
1. It's not documented on docs.appsmith.com at all.
2. The problem is better solved with a combination of `appsmithctl
backup` and `appsmithctl restore`, with much _more_ flexibility.
## Description
> This PR adds asserts the Save button which was added in place of Save
and Authorize in https://github.com/appsmithorg/appsmith/pull/32047Fixes#32071
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8451764949>
> Commit: `d86c6561c9cce0bab2f7dc405bdb609019556ba6`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8451764949&attempt=3"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Enhanced testing for GraphQL data sources by adding an assertion to
verify the presence of a "Save" button for Client Credentials Grant Type
scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Create a new hookWrapper util to enable hook testing with redux state
- Create a util function to create EditorState Focus Info
- Small refactor of `useGetPageFocusUrl` hook
- Adds tests for `useGetPageFocusUrl` hook
Fixes#31871
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/8451092610>
> Commit: `a4660177de70be17d94928eef4fbe29a37f1a1d5`
> Workflow: `PR Automation test suite`
> Tags: `@tag.IDE`
<!-- 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 function to streamline the creation of editor focus
information, enhancing navigation within the IDE.
- **Refactor**
- Refactored logic for setting focus page URLs in the IDE, improving the
accuracy and reliability of navigation.
- **Tests**
- Added tests for the `useGetPageFocusUrl` hook, ensuring URL generation
behaves as expected.
- **Chores**
- Updated utility functions for IDE tests, facilitating better test
setup and execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Adds url tests for IDE utils
Fixes#31870
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8449198628>
> Commit: `87825b005ec206c143a730ecb6312b0a8fca64ad`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8449198628&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Added test cases for URL generation functions for JavaScript entities
and query/plugins in the IDE.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR fixes the issue:
New API button does not work from REST API datasource from review page.
This issue is only observed in enterprise version as it has connections
to multiple environments:
https://github.com/appsmithorg/appsmith/assets/30018882/1f1f3a75-fa4c-4f0a-a463-541299ad8f15Fixes#32064
_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 -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8449817023>
> Commit: `70549d166af84a9484439ce966a5e26a1e71f909`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8449817023&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 error detection by introducing a validation mechanism for API
plugin URLs during query action creation in the Editor, based on
environment, plugin type, and datasource configuration.
- **Tests**
- Added tests to validate the new API plugin URL validation
functionality in the Editor.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
Updating the primary action for app card click on mobile.
Fixes [#32084](https://github.com/appsmithorg/appsmith/issues/32084)
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8448397082>
> Commit: `2424f0f6a1f891f0ff74162ebdb718e6a433a411`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8448397082&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 the application card to support launching the mobile app
directly with specific URL parameters for a more tailored user
experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The PR fixes:
Issue with icon being reversed in property pane.
In property pane, for each section if it is expanded currently, it
should have collapse icon beside it, if section is in collapsed state,
it should have expand icon beside it. Earlier it was reverse, this PR
corrects it
<img width="286" alt="Screenshot 2024-03-27 at 2 02 57 PM"
src="https://github.com/appsmithorg/appsmith/assets/30018882/6af152fd-895e-4529-b8da-70c8ffe0559c">
<img width="289" alt="Screenshot 2024-03-27 at 2 00 48 PM"
src="https://github.com/appsmithorg/appsmith/assets/30018882/45ba123f-3102-4205-8d44-6ba25f330ca6">
Note: This PR fixes only of the UI issues mentioned in #32069Fixes#32069
_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 -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8448851715>
> Commit: `37457a290f6258fbeda84376d62327d5fbe1d78b`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8448851715&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Simplified the logic for displaying the chevron icon in the property
pane sections, enhancing user interface consistency.
- Updated icons for open and closed states in the property sections for
clearer visual cues.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
We are constraining the diff between the old dataTree and the
newDataTree to its only affected nodes. The affected nodes list is the
evalOrder, unevalUpdates and updatedValuePaths (which represents
localStorage and setter updates). Through limiting the diff to the
affected node list this should help in reducing the diff computation
latency and overall improve the performance of each evaluation cycle.
We are also cleaning up code related to compressing and decompressing
updates since we deprecated that functionality.
Fixes#31272
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8447023192>
> Commit: `cb925afbb99577947fbc7233a35e4454223b402a`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8447023192&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 new logic for handling widget state updates efficiently.
- Enhanced evaluation logic to support optimized diff updates and
serialization.
- Improved data tree generation for error handling and evaluation order.
- **Bug Fixes**
- Addressed issues in generating optimized updates for large collections
and handling `undefined` values.
- Fixed Cypress tests in the "PgAdmin Clone App" spec for more reliable
interaction with UI elements.
- **Refactor**
- Simplified the logic for widget state cleanup and evaluation paths
handling.
- Removed unused variables and functions related to widget meta
properties and evaluation paths.
- **Tests**
- Added new spec file `PgAdmin_spec.js` to Cypress limited tests for
client-side regression testing.
- **Chores**
- Updated type imports across various files to reflect changes in
evaluation logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Instead of using `sessionUserService.getCurrentUser()`, or the
`ReactiveSecurityContextHolder.getContext` directly (which we are doing
in several places), this injection will let us get the principal
directly at controller-level.
Yes, it produces the anonymous user, when there's no session.
Why? Less code. More relying on letting Spring do the right thing for
us. 😛
Why aren't we making this change across the board everywhere? Sure,
eventually. Small PR like this helps me get consensus, be less daunting
to review, and most important of all, easy to revert if we notice
something going wrong. In a week or two, if we want to do this, we can
start rolling it out to more places in code.
/ok-to-test tags="@tag.Sanity"
Another attempt at removing QueryDSL. This time, it seems to be working
without very many shenanigans, which throws question on what the hell I
was doing in the previous attempt. 😭
All tests and Sanity Cypress passes on EE at
https://github.com/appsmithorg/appsmith-ee/pull/3805.
## Description
Fetch the actions from database and populate the ids for onPageLoad
actions for the building block.
## Automation
/ok-to-test tags="tags.ImportExport"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8435259797>
> Commit: `8b5e06e3b97ef2795f7664c026c5f67f1d2e8886`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8435259797&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 the import functionality to correctly update onPageLoad
actions with their respective IDs for both action collections and new
actions, ensuring a smoother integration and setup process for users.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Building blocks within the app explorer do not have information about
their spatial requirements in terms of rows and columns.
To address this issue, we propose incorporating metadata into the
template schema within the CS platform. This metadata will specify the
number of rows and columns each building block needs to occupy on the
main canvas, enabling smoother handling during drag-and-drop operations
of the blocks.
Fixes https://github.com/appsmithorg/appsmith/issues/32051
## Automation
/ok-to-test tags="tags.Templates"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8435206653>
> Commit: `a89f7950bca57c68b0b3caea9fbd4639cf915a92`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8435206653&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 grid row and column size customization options for
application templates.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- update node version and appropriate git workflow
- added the path to webpack cache folder, this should speed up bundle
creation about a minute
[Test, build and push Docker
Image](https://github.com/appsmithorg/appsmith/actions/runs/8421752151)
[Build Client, Server & Run only
Cypress](https://github.com/appsmithorg/appsmith/actions/runs/8421752151)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated actions/cache and actions/setup-node to v4 across various
workflows for improved caching and Node.js setup.
- Modified the `yarn install` command to use `--immutable` flag,
enhancing dependency management.
- **Documentation**
- Updated comments within workflows to include cautionary and important
notes, ensuring better clarity.
- **Refactor**
- Adjusted caching paths and keys for more efficient caching behavior.
- Changed Node.js installation to version 20.11.1 in Dockerfile,
aligning with the latest version for better performance and security.
- **Tests**
- Modified assertion in `getCurrentLocationSaga` test to check for the
presence of a property, improving test accuracy.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Aman Agarwal <aman@appsmith.com>
## Description
what has been removed? -->
1. all config update to widget, action and js action including
adding/editing/deleting new functions
2. all logs which are dependent of these config paths
Fixes #`Issue Number`
_or_
Fixes [`Issue
URL`](https://github.com/appsmithorg/appsmith/issues/32063)
> [!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]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8432287062>
> Commit: `1c48cbbbf2c11312d8b23f23ce20cee8a9245741`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8432287062&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Simplified and cleaned up the codebase across various sagas, enhancing
performance and maintainability.
- Streamlined logging and state management in action and debugger
functionalities.
- Removed unused imports and functions, particularly in handling
JavaScript functions within the app.
- **Tests**
- Updated and refactored test descriptions and cases in different
Cypress test files to improve clarity and organization.
- Removed unnecessary test cases related to modifying widget properties
and resetting debugger state.
- Retained essential test cases for console log functionality with
normal moustache binding.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes https://github.com/appsmithorg/appsmith/issues/32045
## Automation
/ok-to-test tags="@tag.Datasource"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8432564141>
> Commit: `120b0d79d5c4139a92bba228bdcb476cf1f7710c`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8432564141&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Documentation**
- Updated information text related to using Prepared Statements in
queries, emphasizing the prevention of SQL injections and highlighting
limitations on dynamic bindings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Adds IDE rendering tests for JS routes
Fixes#31867
## Automation
/ok-to-test tags="@tag.IDE"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8431959142>
> Commit: `ead16d0a5a8bb41003d7c75ae5a4f4fa648e3420`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8431959142&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Introduced test cases for rendering JavaScript components in different
states within the IDE.
- **Chores**
- Added mock data factories for JavaScript objects with actions,
enhancing testing capabilities.
- Updated factory utilities to support JavaScript actions in IDE test
states.
- Included a new entry for the JavaScript plugin in the mock plugins
state configuration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Updated withWidgetProps to inject errors to widget only in canvas mode
- Deleted some stale code that were using the createCanvasWidget
function
- getCanvasWidgetDsl
- getMainContainer
Fixes https://github.com/appsmithorg/appsmith/issues/32026
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8419000251>
> Commit: `cfaabbfe72c827bc4ed00e76093d74a0071226db`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8419000251&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Simplified test setups by removing unnecessary mocks and spies across
various test files.
- Enhanced widget error handling in editor mode for improved stability
and user feedback.
- **Tests**
- Refactored widget rendering utility tests for better error handling.
- **New Features**
- Widgets in editor mode now display error information, aiding in
quicker debugging and development.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds test to check the functionality of
groupAndSortEntitySegmentList
Fixes#31872
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8419360291>
> Commit: `f4858d4b452c2662ddff53a1e7c1c5054fb02494`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8419360291&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Introduced tests for the `groupAndSortEntitySegmentList` function to
ensure entity segment lists are grouped and sorted alphabetically
correctly.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds unit test for useGroupedAddJsOperations hook.
Fixes#31875
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8419327183>
> Commit: `5b4c16f5e718a0c6e2c5f056f4fc22c3eac27144`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8419327183&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Introduced tests for the `useGroupedAddJsOperations` hook to ensure it
groups operations correctly.
- **New Features**
- Added tooltip functionality to operations in the Global Search
feature.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> On selecting `Client Credentials` grant type, the button shows up as
`Save and Authorize` which triggered the flow for redirection as in the
case required for `Authorization Code` grant type.
> This PR changes the button trigger to `Save` which only saves the
datasource configuration in the database for client credentials grant
type since it does not require the redirection authorization flow.
Fixes#31207
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8423946100>
> Commit: `d19714118dda656f40ef5158a398d61ab39cef22`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8423946100&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- 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 OAuth2 authorization support, allowing for different grant
types.
- Improved user interface for OAuth2 authorization, including specific
messages under certain conditions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Two things happening in this PR.
1. We're removing QueryDSL.
2. We're adding [Errorprone](http://errorprone.info/).
Why both together? Because I can't get the build to work, if I remove
QueryDSL, and not add any other annotation processor. Lombok is refusing
to do its thing, unless there is at least one other annotation
processor, which QueryDSL was filling in for. I wanted to add Errorprone
anyway in a separate task, so didn't investigate further and just added
it here.
But adding Errorprone is not the idea for now. So all lint rules are
disable, and it has no affect on build time either. We'll slowly roll
out some of the checks and lint rules in the coming weeks.
## Description
Add node variable for TS type checking.
Before run `yarn start` write `export ENABLE_TYPE_CHECKING=false` to
disabled checks and `export ENABLE_TYPE_CHECKING=true` to enabled.
Checks work by default if the variable is not set at all.
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!WARNING]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8378067976>
> Commit: `e451199e48112ebe9230590ee822eb38f419f86c`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8378067976&attempt=1"
target="_blank">Click here!</a>
> It seems like **no tests ran** 😔. We are not able to recognize it,
please check workflow <a
href="https://github.com/appsmithorg/appsmith/actions/runs/8378067976"
target="_blank">here.</a>
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Enhanced TypeScript with dynamic type checking based on environment
variables.
- **Refactor**
- Improved flexibility by modifying the type property in widget
configuration for layout components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Added unit tests for UI render
Fixes#31866
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8416190872>
> Commit: `a35c061f652a0813ca49bdbb3387b88ed98b2710`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8416190872&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Introduced tests for the IDE component to ensure various UI states are
rendered correctly, including empty canvas, list state, selected widget,
and side-by-side mode tab rendering.
- **Refactor**
- Enhanced the `SegmentAddHeader` component with a `data-testid`
attribute for improved testability of the UI.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Plenty changes related to widgets alignment
1. Paragraph, button, inputs, single checkbox and switch widgets are
aligned along the baseline of the text content
2. The icons in the buttons and the single checkbox and switch are now
positioned absolutely so as not to affect the height of the components.
The height of the components now depends on text content.
3. All unnecessary paddings and borders in the layout have been removed:
- Canvas padding: `--outer-spacing-4`
- Gap between sections and zones: `--outer-spacing-4`
- Zone padding: `--outer-spacing-3`
- Gap between widgets: `--outer-spacing-3`
4. In widget selection styles replace `border` with `outline`, since the
`outline` one does not take space.
5. Add Changes to the flex-basis calculation method. Now the gap between
the zones is taken into account there.
6. Add a lot of small fixes related to the changes described above.
https://github.com/appsmithorg/appsmith/assets/11555074/b7c220eb-3e27-4039-9c15-6281bafe8008Fixes#29364
## Automation
/ok-to-test tags="@tag.Anvil"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8375537665>
> Commit: `f85b63c0a49f30b9762379c2f8c3bd38c7a8355f`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8375537665&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Improved handling of CSS variable values in Flex components.
- Enhanced styling and layout configurations for a better user
experience.
- **Bug Fixes**
- Fixed label positioning and styling issues in Checkbox and Switch
components.
- Adjusted padding, margin, and sizing for consistency and alignment.
- **Refactor**
- Enhanced flex layout handling and space distribution logic for
improved layout flexibility.
- **Style**
- Updated component styles for refined user interface aesthetics.
- **Chores**
- Updated feature flags and configurations for widgets and components to
enable new functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR fix the unit test failure in release
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 -->
> [!WARNING]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8389775844>
> Commit: `f13499d1af28b6c9c100dd0f569ce5d580056a69`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8389775844&attempt=2"
target="_blank">Click here!</a>
> It seems like **no tests ran** 😔. We are not able to recognize it,
please check workflow <a
href="https://github.com/appsmithorg/appsmith/actions/runs/8389775844"
target="_blank">here.</a>
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Updated tests for the editor's split screen functionality.
- **Refactor**
- Refactored the SegmentedHeader component to include new constants,
variables, selectors, and actions.
- Modified SplitScreenTabs component by removing certain components,
imports, and functions related to editor view mode.
- **Style**
- Adjusted the max-width calculation in StyledTab component, reducing
the width by 24px.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds builds on top of existing slash command menu feature. Today
when we enter JS mode for any of the properties and type in `/` command,
we are able to see the following menu.
<img width="290" alt="Screenshot 2024-03-21 at 1 31 26 PM"
src="https://github.com/appsmithorg/appsmith/assets/30018882/319d5be1-33f7-49e3-9b8d-fd8aa5fa9aed">
With the changes in this PR, now whenever we switch to JS mode for data
property of Table and JSON form widgets, if we focus on the input box,
we should be able to see the menu with options showing up as shown
below:
https://github.com/appsmithorg/appsmith/assets/30018882/30496f3c-615a-4a70-ba05-e0151c6bcdd5
**Limitations**:
- This feature is only implemented for Table and JSON form widgets data
property, based on mixpanel results we can further decide to include it
for all or not.
Fixes#31900
_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]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8386142777>
> Commit: `90bea1f91b3d864c984548b11ec4d3a5bd70b3f7`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8386142777&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
## Summary by CodeRabbit
- **New Features**
- Enhanced the code editor to dynamically show a slash command menu for
certain widgets, improving the user editing experience.
- Introduced logic to selectively enable slash command functionality for
table and JSON widgets, specifically for the `data` property.
- **Enhancements**
- Updated the code editor hint system to support additional context,
including datasource information and feature flags, enriching the
autocomplete and suggestion capabilities.
- **Bug Fixes**
- Fixed an issue where unnecessary bindings were applied to widgets,
ensuring cleaner and more relevant code generation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced `CodeEditor` with advanced properties to support diverse
functionalities including AI assistance and plugin integrations.
- Introduced a function to determine the visibility of the slash command
menu based on widget types.
- Added specific widget properties for table and JSON widgets to enable
focused functionalities.
- Implemented a new feature flag to toggle learnability and ease of
initial use improvements.
- **Tests**
- Added tests for Property Pane Suggestions functionality to ensure
reliable autocomplete features.
- **Chores**
- Improved `PropertyPane` interaction by adding a method for focusing
and asserting auto-save in text fields.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
> [!TIP]
> Update the `generateActionCollectionViewDTO` to take into account the
`viewMode`.
Fixes https://github.com/appsmithorg/appsmith/issues/31887
## Automation
/ok-to-test tags="@tag.Sanity @tag.JS"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!WARNING]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8326337566>
> Commit: `f2c67c2c3153c5240891be6216db174bcd22c5c1`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8326337566&attempt=2"
target="_blank">Click here!</a>
> It seems like **no tests ran** 😔. We are not able to recognize it,
please check workflow <a
href="https://github.com/appsmithorg/appsmith/actions/runs/8326337566"
target="_blank">here.</a>
<!-- 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 the application's ability to switch between published and
unpublished collections based on the view mode, providing a more dynamic
user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>