## 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>
## Description
* Migrate ApplicationSnapshot Repo class to use the bridge API for the
mongo to postgres migration
## Automation
/ok-to-test tags="tag.Visual"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8379807833>
> Commit: `1cfebd4f4d27d2bfd4fff29e182941a39381e999`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8379807833&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
## Summary by CodeRabbit
- **New Features**
- Enhanced query capabilities with the addition of new `equal` methods,
allowing for more precise data fetching based on string and integer
values.
- **Refactor**
- Improved data querying in application snapshots by utilizing the new
`equal` method for cleaner and more efficient code.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
* After importing the block into a page, the browser does not have the
updated values on the on page load actions.
* The newly created actions, actionCollections which needs to run after
adding the block to canvas are missing.
* This is because unlike normal flow, here the server fetch the Block
data from DSL and then has to import it and send the widget DSL from the
block to client so that the widgets are visible on the canvas. Hence
adding this to response to make the experience same as other widgets
Fixes#31992
## Automation
/ok-to-test tags="tag.ImportExport"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8379501235>
> Commit: `a6599b14c4027179f79a31b3d6a8e1dad1cc96f0`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8379501235&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 a new data structure to enhance building block imports,
including widget layouts and onPageLoad actions.
- **Refactor**
- Updated the import functionality to utilize the new data structure for
building blocks, improving the handling of layout data and onPageLoad
actions.
- **Tests**
- Modified unit tests to align with the new data structure for building
block imports, ensuring compatibility and correctness.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Automation
/ok-to-test tags="@tag.List"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8385766733>
> Commit: `d9a13cf051614a9a68c38624bcaa031f2014df6b`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8385766733&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
- **Tests**
- Updated how data is loaded in tests for ListV2 widget to enhance
testing efficiency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Removed the feature flag
`release_show_create_app_from_templates_enabled` import and usage in the
WorkspaceAction component were refactored.
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.Workspace"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8373858785>
> Commit: `8e813e49585b11592412bf1d194d847a7753ea60`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8373858785&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
## Description
This PR fix OOM issue in EE.
## 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/8377742227>
> Commit: `001f5be6966398ece7e2f87e7b95993c87af2929`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8377742227&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
- **Chores**
- Introduced a configuration to set a memory limit for TypeScript,
enhancing performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#31881
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Renamed `selectedOptionValue` to `selectedValues` in Checkbox and
Switch Group Widgets to more accurately describe its functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Fixes#30561
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced feature flag functionality for improved widget deployment
control.
- Added a configurable `pageSize` property to WDSTableWidget for
customizing displayed rows.
- **Refactor**
- Streamlined table scrolling by removing `SimpleBar` and adjusting
container styles.
- Improved table structure and styling for enhanced performance and user
experience.
- Updated height calculation logic for better data display.
- **Bug Fixes**
- Resolved issue with inaccurate evaluation of feature flags to ensure
all users access latest features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
Fixes#31899
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new hover outline color for input fields to enhance user
interaction.
- **Style**
- Updated hover outline colors for both Dark and Light modes to improve
visibility and aesthetics.
- **Tests**
- Adjusted tests to reflect new color values for hover states in both
Dark and Light themes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
When debugger is opened via short key, the default tab is not selected.
This PR fixes this behaviour.
Fixes https://github.com/appsmithorg/appsmith/issues/31988
## Automation
/ok-to-test tags="@tag.IDE, @tag.Debugger"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8374340841>
> Commit: `8e65a3f678d6a682346c798b4f4bf61477d4a366`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8374340841&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 debugger functionality within the app, including the
ability to toggle debugger states and set the selected debugger tab more
intuitively.
- **Refactor**
- Updated key functions and mappings related to debugger actions for
improved performance and user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fixes the top menu help options. Removes the old links and shows the
same options as we show on the help menu on the bottom bar
Fixes#31983
## 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/8373566846>
> Commit: `32047270804cf14dcef7ef423c58d3afa800580e`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8373566846&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 navigation menu to include options for reporting bugs and
chatting with support, improving user assistance and feedback
mechanisms.
- Updated navigation menu items to display icons, enhancing visual
identification and user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
IDE rendering tests for Query routes
Fixes#31865
## 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/8372729741>
> Commit: `32d0e14a69f0fef33904eab854b691112cdc6046`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8372729741&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 accessibility by adding `aria-label` to close buttons in the
IDE.
- Improved testing capabilities with new `data-testid` attributes across
various components for better identification.
- **Tests**
- Introduced comprehensive test cases for IDE functionalities including
rendering states, adding queries/APIs, and handling different screen
modes.
- Added factories for creating mock actions and states for API, Google
Sheets, Postgres, and IDE testing.
- **Chores**
- Updated and added `data-testid` attributes for improved testability
and maintenance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Migrate the mongo criteria to bridge class API
## Automation
/ok-to-test tags="tag.ActionCollection"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8373394313>
> Commit: `31db4207be1c94445c7237a6131c43987459adf4`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8373394313&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**
- Enhanced criteria building abstraction in server repository operations
for improved code maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Make edit launch buttons as links for better user experience
- Add upgrade ramps for session timeout setting
Fixes [#29829](https://github.com/appsmithorg/appsmith/issues/29829)
[#31724](https://github.com/appsmithorg/appsmith/issues/31724)
## 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/8370510386>
> Commit: `b45ae17a5f28fe4706a69cc0dd141e5bb5e8b225`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8370510386&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 a session timeout setting for user sessions, enhancing
security and compliance.
- Improved admin settings interface with additional configuration
options for session management.
- **Enhancements**
- Streamlined navigation within the application by removing reliance on
default page IDs.
- Enhanced input fields in admin settings with support for default
values and custom formats.
- **Style Updates**
- Updated styling for labels, icons, and text inputs in the admin
settings for better user experience.
- **Tests**
- Expanded Cypress test coverage for admin settings, including checks
for business and enterprise settings, authentication, branding, and
navigation.
- **Refactor**
- Simplified code by renaming constants and updating component
properties for clarity and maintainability.
- **Chores**
- Updated Cypress configuration and support files for improved test
automation practices.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Migrate the mongo criteria to bridge class API
## Automation
/ok-to-test tags="tag.NewAction"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8372699694>
> Commit: `f57eea5e174a3b97b2d2e68d41a0cae87f918596`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8372699694&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**
- Improved query building logic in the server for enhanced performance
and control flow.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add validation flow for partial import, to avoid user importing the
fully exported app in the partial import.
Fixes#31829
## Automation
/ok-to-test tags="tag.ImportExport"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8371031960>
> Commit: `8a501dd49d3793eade3ef3b425c55714e6720a46`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8371031960&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 import functionality to include a check for importable
resources, improving error handling and user feedback during the import
process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> [!TIP]
> Add code comment block about how event tags are generated for
Analytics service.
Fixes [[Task]: Add clarification on Analytics Events, when is resource
type added as a suffix to the analytics
events.](https://github.com/appsmithorg/appsmith/issues/31582)
## 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 -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Documentation**
- Enhanced clarity on event tag generation in analytics with detailed
comments, including examples and references.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
- Add `needsErrorInfo` to widget configuration
- Replace usage of `fast-deep-equal` with referential check for
tableData
## Automation
/ok-to-test tags="@tag.Widget"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8370220547>
> Commit: `ded6b16333e1df5d5d55f22df0559ba378f33d9c`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8370220547&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 a mechanism to display evaluation errors directly on
widgets when necessary.
- **Enhancements**
- Simplified data comparison logic in `TableWidgetV2` to improve
performance.
<!-- 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 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 https://github.com/appsmithorg/appsmith/issues/31568
> [!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/8325305172>
> Commit: `ce37f05a17f494b1a5409cf79895248cc32f453f`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8325305172&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
## Description
Adding a beta check for adding description on options for creating JS
objects
Fixes [#31949](https://github.com/appsmithorg/appsmith/issues/31949)
## Automation
/ok-to-test tags="@tag.JS"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8356416960>
> Commit: `8117683b5b63fcb9f00612fd4083e2bd7f7a2b5a`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8356416960&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**
- Updated the `AddJS` component to display "Beta" in the description for
beta features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
1. Improve string pattern used to determine whether to show onReady
function missing warning
2. Remove stale keys from dynamicTriggerPathList when user changes the
event names
3. Clean up events when a custom widget unselected in editor
Fixes https://github.com/appsmithorg/appsmith/issues/31682
Fixes https://github.com/appsmithorg/appsmith/issues/30276
Fixes https://github.com/appsmithorg/appsmith/issues/30204
## 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/8337490694>
> Commit: `4fcb4cab6960c9a4a459a2b97261a112363901e2`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8337490694&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 a new route for `CustomWidgetBuilderLoader` component,
enhancing navigation and accessibility.
- Enhanced the Custom Widget Builder with improved event handling and
dynamic trigger path support.
- Added a new styled `Container` for the Custom Widget component for
better layout management.
- **Refactor**
- Improved configuration settings readability and consistency for New
Relic integration.
- Refactored `CustomWidgetBuilderService` for clearer modularity and
enhanced message handling.
- Optimized property editing and update logic within the Property Pane
of the Editor.
- **Bug Fixes**
- Adjusted connection timeout in the Custom Widget Builder for a more
responsive user experience.
- Updated button sizes in the ConfirmationModal for consistency.
- **Tests**
- Added comprehensive test cases for `CustomWidgetBuilderService` and
`Builder` classes.
- **Chores**
- Removed deprecated `UPDATE_SRCDOC_ACK` event, streamlining Custom
Widget Builder events.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
We're logging the entire request/response, Axios config etc. in the
logs, which isn't adding any value in troubleshooting, but is making
reading logs _much_ harder.
This PR will print only the essential information to logs, concisely.
## Description
This PR added unit test to validate getNextEntityAfterDelete
Fixes#31864
## 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/8340217451>
> Commit: `81950b382c97f2634a44d9f64eef904104df8390`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8340217451&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**
- Improved internal handling of redirection after deleting an entity to
ensure a smoother user experience.
- **Tests**
- Added tests for better reliability in navigating between entities
after deletions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR to provide more contextual exception when Appsmith exception is
thrown within method marked with `@FeatureFlagged`.
## 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/8339550893>
> Commit: `e5a0be3166e7ede54240c8981683f61e09f506f8`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8339550893&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**
- Improved handling of specific exceptions during method invocations to
directly rethrow known exceptions for clearer error reporting.
- **Bug Fixes**
- Enhanced an error message in the system to provide more detailed
information about encountered issues.
- **Tests**
- Added new tests to verify the correct handling and messaging of
exceptions under different conditions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Allows you to pass feature flags when using the `render` function of
testing utils
```
const container = render(
<Component />,
{ featureFlags: { release_my_feature_enabled: true } }
)
```
This will update the redux store with the flags values passed
## Description
> [!TIP]
> Code split the recently used workspaces code to other workspace
children
Fixes [[Task]: Workflows to get sorted based on recently used objects
per user in a
workspace](https://github.com/appsmithorg/appsmith/issues/30841)
## 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/8323719016>
> Commit: `af46466b7d88662d656fcaf8034ccda9dd72f657`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8323719016&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
## Summary by CodeRabbit
- **New Features**
- Enhanced tracking for user interactions across applications,
workflows, and packages to improve the user experience.
- **Refactor**
- Updated user data service to support the new tracking feature,
ensuring a more personalized and efficient user interface.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
Created a pre delete hook to delete datasource files on Appsmith AI
server when datasource is deleted in Appsmith instance.
#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith-ee/issues/3617
#### How Has This Been Tested?
- [x] Manual
## Automation
/ok-to-test tags="@tag.Datasource"
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new method `preDeleteHook` in the `PluginExecutor`
interface to serve as a hook after deleting a datasource.
- Added a new method `disassociateDatasource` in the AI plugin to notify
the AI server about datasource deletion and provide file context if
available.
- **Refactor**
- Enhanced the AI plugin by refactoring methods to use a new
`createAssociateDTO` method for generating `AssociateDTO` instances,
improving code readability and maintainability.
- **Chores**
- Updated the `archiveById` method in DatasourceServiceCEImpl to include
a `flatMap` operation that triggers a `preDeleteHook` method on the
plugin executor before archiving the datasource. Also added a new
private method `findPluginExecutor` for retrieving the plugin executor.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8338230830>
> Commit: `800915ea99c93663af34d08e8bcf4a14ad1356d0`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8338230830&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
## Description
Removing duplicate status API on opening modal
#### PR fixes following issue(s)
Fixes#31228
## Automation
/ok-to-test tags="@tag.Git"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved the initialization process of Git status during deployment
and merge operations for enhanced performance.
- Optimized logging and code flow in the `getStatus` method for better
monitoring and troubleshooting.
- Introduced elapsed time logging for various operations within the
method.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8328565497>
> Commit: `b8138d55279aaa943e8d747286663c0d5c71d705`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8328565497&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: subrata <subrata@appsmith.com>
Co-authored-by: manish kumar <manish@appsmith.com>
Co-authored-by: manish <manish@manishs-MacBook-Pro.local>
Co-authored-by: sondermanish <sonder.manish@gmail.com>
## Description
This PR removes logging of `JS_VARIABLE_MUTATED` event and related code.
Fixes https://github.com/appsmithorg/appsmith/issues/31879
> [!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.JS"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8328673492>
> Commit: `bcadfaca12b84783d8b103d2eb769c3cc53039e7`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8328673492&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
- **Chores**
- Removed unused analytics events and related code for tracking
JavaScript variable mutations to streamline the application's
performance and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In this PR we are restructuring the WidgetsEditor into multiple
components so that it is easy to assess changes.
currently the widgets editor just does too much at one place to even
understand what is happening.
This is also the first step in trying to decrease the number of places
where layout system type is being used to manipulate a functionality.
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]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8321642656>
> Commit: `afbe7fc015e4d7b098d5fb68db8eb17a730fde71`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8321642656&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 a comprehensive layout for the widget editor, including
header, content, and footer areas.
- Added `WidgetEditorContent` for orchestrating the main content area
with navigation and layout-based canvas editor.
- New `LayoutSystemBasedPageViewer` and `NavigationAdjustedPageViewer`
components for enhanced page display and navigation within the layout
system.
- Implemented `WidgetEditorContentWrapper` for managing content layout
and interactions within the widget editor.
- Added `WidgetEditorNavigation` for improved navigation preview.
- **Refactor**
- Updated import paths across various components to reflect new project
structure.
- Significant restructuring of the `WidgetsEditor` component for better
efficiency and dependency management.
- **Documentation**
- Added descriptive comments for the `CodeModeTooltip` component.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add captcha for the invite user flow.
Fixes https://theappsmith.slack.com/archives/CGBPVEJ5C/p1710134091696379https://github.com/appsmithorg/appsmith/issues/31789
## Automation
/ok-to-test tags="@tag.Workspace"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8321963367>
> Commit: `769030f0a3deb09e256c38cba7d6d30a9a80a379`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8321963367&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
## Summary by CodeRabbit
- **New Features**
- Integrated Google reCAPTCHA in the user invitation form to enhance
security during form submissions.
- **Enhancements**
- Improved handling of URL parameters in utility functions for more
robust data processing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
Co-authored-by: Ankita Kinger <ankita@appsmith.com>
Fixes#29365
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced label positioning for Checkbox, Radio, and Switch components
with "start" and "end" options.
- Introduced dynamic orientation for Checkbox and Radio groups based on
container size.
- Added new story for RadioGroup component to demonstrate vertical
orientation.
- **Style Updates**
- Updated CSS for Switch, Checkbox, and Radio components to align with
the new label positioning options.
- Improved field group styles with `flex-wrap` to accommodate various
layouts.
- **Refactor**
- Modified handling of `labelPosition` across components for consistency
and flexibility.
- Implemented `useGroupOrientation` hook for dynamic orientation
management.
- **Chores**
- Adjusted default configurations and property pane options for widgets
to align with new label positioning and orientation features.
- Added feature flag checks for specific functionalities to always
return `true`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>