Commit Graph

1623 Commits

Author SHA1 Message Date
Hetu Nandu
065ced345b
chore: Make Editor Pane Segments GA (#32712) 2024-04-18 10:05:34 +05:30
Jacques Ikot
0118051301
feat: implement dropping building blocks on canvas (#31857)
## Description
> [!TIP]  
**Goal**
To drag any building blocks from the explorer and drop at any position
on the users canvas with full implementation.

**Implementation**
- Show skeleton widget when building block is initially dragged unto the
canvas.
- Make API call to add datasources, queries, and JS to existing page of
users app
- Get returned widget DSL and use existing copy paste logic to display
widgets on the canvas
- Remove loading state, handle clean up for copy paste
- Run all queries newly created by the dropped building block

**Limitations**
- There is a loading state and the process is not instant like dropping
a widget

This PR is followed by this one
[here](https://github.com/appsmithorg/appsmith/pull/31406), which
displays the loading state when a building block is dragged unto the
canvas.

Fixes #31856
## Automation

/ok-to-test tags="@tag.Templates, @tag.MainContainer, @tag.Visual,
@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/8701664455>
> Commit: 456a7a0a322e76974a7f5c41a6c1e274ef82e4ea
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8701664455&attempt=1"
target="_blank">Click 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**
- Introduced a new "Building Blocks" category in the widget sidebar for
enhanced organization and accessibility.
- Added functionality to resize building blocks with new horizontal and
vertical limits.
- Implemented a "see more" button for "Building Blocks" to display all
associated widgets.
- Enhanced drag and drop functionality for building blocks on the
canvas.

- **Enhancements**
- Improved sorting logic for widgets, prioritizing "Building Blocks".
    - Enhanced widget search functionality within the sidebar.

- **Bug Fixes**
- Adjusted default rows and columns settings for explorer building
blocks to improve layout and usability.

- **Documentation**
- Updated messages and constants related to new features for clarity and
consistency.

- **Refactor**
- Refactored drag and drop handling logic to support new building block
constraints and features.
- Updated application state management to include building blocks
related data.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
2024-04-16 09:41:09 +01:00
albinAppsmith
70b0cecc2e
feat: Tabs close functionality and scroll (#32551)
## Description

This PR have following changes,
- Added close button and close functionality for tabs
- Removed 5 tabs limit and added scroll for tabs

Fixes #32407

## 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/8683747982>
> Commit: d87357251bcb3a6f23942d17e548867882194295
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8683747982&attempt=1"
target="_blank">Click 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 tab management in the IDE with new functionalities to close
and remove JavaScript and query action tabs.
- Improved user interaction within the editor interface by adding scroll
behavior and a close button for each tab.

- **Bug Fixes**
- Fixed issues related to tab rendering and close button behavior in the
IDE, ensuring smoother user experience.

- **Tests**
- Added comprehensive tests for the new features and fixes in the IDE's
tab management system.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-15 11:06:05 +05:30
Ashok Kumar M
353c91b8fa
fix: jest test failures coz of getIsAnvilLayout (#32664)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX1JO6UjhWrZEl6JP180WytEbimcxoUzA0%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=8xbfQu9)
## 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 `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/8679486679>
> Commit: fe97e718498f1974e3604ae20160e99918f9c35c
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8679486679&attempt=1"
target="_blank">Click here!</a>

<!-- 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 determining the layout system type in the
app.
- **Tests**
- Updated test files to remove unnecessary mock implementations related
to layout system checks.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-15 09:17:23 +05:30
Ashok Kumar M
7b527c9024
chore: Merge wds and anvil feature flags (#32609)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX1LNwrMHgs05enX0VDk8QxZH7uP7Ii4HE%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=M7zehz4)
## Description

Cleaning up three patterns of checks to enable wds and anvil into two.
wds and anvil had to have different flags coz anvil had to play catch up
with wds, now that's not the case so it does not make sense to have two
flags.

Old patterns
- checking if the wds feature flag is enabled
- checking if the anvil feature flag is enabled
- checking if the layout system of the app is anvil

New Pattern
- checking if anvil feature flag is enabled (used only for creating an
anvil app)
- checking if layout system of the app is anvil

Fixes #32590
_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/8663918496>
> Commit: e10cc2a84ed680b29c49c5b2e8175df4c18da2f8
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8663918496&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->

















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

- **Refactor**
- Consolidated the usage of layout system checks across the application
to use a unified Anvil layout selector, enhancing consistency in
layout-related conditional logic.
- **Bug Fixes**
- Removed outdated feature flags related to the Anvil + WDS integration,
ensuring the application's feature toggling aligns with the current
development strategy.
- **Tests**
- Updated unit tests to align with the new method of layout system
determination, ensuring test environments accurately reflect production
behavior.
- **Chores**
- Cleaned up redundant code and feature flags that are no longer in use,
simplifying the codebase and reducing potential for errors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-12 22:54:04 +05:30
Ankita Kinger
768811621a
chore: Using the new function for getting the new name for entities during the copy and move flow (#32611)
## Description

Using the new function for getting the new name for entities during the
copy and move flow to avoid name conflicts.

Fixes [#30786](https://github.com/appsmithorg/appsmith/issues/30786)

## 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/8647880292>
> Commit: aff834a99b073dde0cdb4921df07c190433e0d53
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8647880292&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-12 14:37:34 +05:30
ashit-rath
b804a8e5b1
chore: refactor in debugger saga to transform error logs in EE (#32383)
## Description
Adds a helper function which is overridden in EE to transform logs to
the correct format and identifiers

PR for https://github.com/appsmithorg/appsmith-ee/pull/3900

## 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/8627882541>
> Commit: `a61e11c3ccf2a3c744f728ca01fc8bfc3e2f580b`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8627882541&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 app's debugging capabilities by introducing a new
function to process error logs more efficiently.


<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-11 11:36:48 +05:30
albinAppsmith
d5ed551b16
feat: Added searchable files list for IDE tabs (#32505)
## Description

This PR implements the new searchable files list menu in IDE tabs.

Fixes #32479

## 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/8629000008>
> Commit: `e5c317b4057e814fc04cdb107fbe223de601c7bc`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8629000008&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-10 15:36:18 +05:30
Rishabh Rathod
36dedc0b0f
fix: appsmith.URL.queryParams update on same page navigation (#32382)
## Description

- Making sure to trigger evaluation after navigateTo on same page to
make sure we update the `appsmith.URL.queryParams`
- Update the cypress test to check queryParams update on same page

Fixes https://github.com/appsmithorg/appsmith/issues/26831


## Steps to test 
1. Add a button widget
2. Add a `navigateTo` action on click event of button 
3. NavigateTo should have params as below and should navigate to same
page
```js
{{
{
key: "aff", 
key2: "dsfs" 
}
}}
```
4. Add a text widget with binding `{{appsmith.URL.queryParams}}` 
5. Make sure that the text widget updates once the button is clicked
## 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/8598783804>
> Commit: `634477b53582ae5392eb26dde1a1fcd434f55883`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8598783804&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**
- Added support for setting URL data through Redux actions for enhanced
state management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-09 16:01:17 +05:30
albinAppsmith
1ac6fc49d4
feat: Tabs revamp add button position (#32478)
## Description

This PR changes the add button placement to RHS in IDE tabs.

Fixes #32438 

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8595616324>
> Commit: `fc1ec96d29b2d1664892c24dd25ccaced1e07c86`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8595616324&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-08 13:28:54 +05:30
Vemparala Surya Vamsi
dcd97da817
chore: remove redundant evalTreeWithChanges calls during plugin page load call (#32459)
## Description
Removed redundant evalTreeWithChanges calls made during plugin on load
execution. We have noticed a 30% reduction in both main thread and web
worker scripting.

Fixes #32475  

## 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/8578827174>
> Commit: `0446a81d087ad975f12cd8e3a83c10380b5eb52d`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8578827174&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

- **Refactor**
- Streamlined the execution logic for page load actions to improve
performance and code clarity.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-08 09:57:16 +05:30
Hetu Nandu
159399d8f4
fix: On delete of last item, redirect user to blank screen (#32418)
## Description

When the last item is deleted in JS, Query Or UI, we will take the user
to the to the list view where the blank state is shown. This way the
user will not be confused about the add state they were dropped into

Fixes #30612

## 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/8569313532>
> Commit: `6408a9af3dee52fe66501afc6b4e6ded49993fee`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8569313532&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 focus management across the application by centralizing focus
history handling.
- Updated redirection logic after entity deletion to enhance user
navigation experience.
- **Chores**
- Removed unused `removeFocusHistoryRequest` function and associated
action constant to streamline codebase.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-05 17:56:17 +05:30
Hetu Nandu
c8f1b82ca5
fix: action selector create flow (#32326)
## Description

Fixes the broken flow where, on creation of a query or JS object in via
the ActionCreator UI, the widget property that initiated it, does not
get bound to the newly created item.

We will now keep reference of the setter method that would set the
binding value to the property and when the item is created, it will call
the method with the correct bind value.

This will wait till that particular action type is created.


Fixes #7745 

## 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/8550162310>
> Commit: `57e69a0c47496d1a1ee97e04991f34ca79440181`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8550162310&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 the ability to create new queries and JavaScript functions
directly from action creators, enhancing the workflow for building
applications.
- Added support for binding newly created queries, APIs, and JavaScript
objects to button onClick events, streamlining the process of connecting
actions to UI elements.
- **Enhancements**
- Improved the code modularity and readability in the Editor Navigation
by refactoring the logic for closing announcement modals.
- **Tests**
- Added regression tests to ensure the reliability of creating actions
via an action selector and their proper binding to properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-05 11:28:47 +05:30
Vemparala Surya Vamsi
4b27a59b1c
chore: remove feature flag code of consolidated api (#32248)
Removed feature flag related code to consolidated api, also corrections
in feature flags are made here.

Fixes #31100

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/8490467344>
> Commit: `fce48b210983689994152b7ae77c773cfdca854a`
> Workflow: `PR Automation test suite`
> 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**
- Introduced new feature flags to enhance user interface and default
settings.
- **Refactor**
	- Simplified page loading logic for better performance.
	- Enhanced error handling and reporting for a smoother user experience.
- **Chores**
	- Cleaned up unused imports and code for better maintainability.
- **Bug Fixes**
- Removed redundant checks and updated functionality to include new
feature flags.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-01 17:45:09 +05:30
Aman Agarwal
af184f3cb0
feat: add edit option in suggested queries in hint commands (#32076)
## Description
This PR introduces a new way to edit the queries directly from slash
hint commands that edit button appears on hover of the hint. This also
introduces an event `EDIT_ACTION_CLICK` as emitted from different other
places of our application with all the similar properties except the
`from` : `SlashCommandHint`

<img width="566" alt="Screenshot 2024-03-27 at 12 45 09 AM"
src="https://github.com/appsmithorg/appsmith/assets/7565635/34f0e226-d45a-482b-8484-7e1fdc672a04">


Fixes #32075
_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/8465758601>
> Commit: `cff14b0006441274e182d17ff66603219971ddbd`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8465758601&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 code editor with improved command suggestions and quick
command generation, including URL and event parameter handling.
	- Introduced new styling for command suggestions in the code editor.
- **Refactor**
- Updated functions and components for better handling and mapping of
plugins within the code editor.
- **Chores**
- Added necessary imports and updated the usage of various components
and utilities to support new features and improvements.

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

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-03-28 19:24:33 +05:30
Hetu Nandu
fc9fd18bfc
fix: Closing modal in Split view, exits code mode (#32119)
## 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  -->
2024-03-27 14:38:28 +00:00
Vemparala Surya Vamsi
e151524d1c
feat: constrained diff between states (#31847)
## 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 -->
2024-03-27 14:37:46 +05:30
Valera Melnikov
92c72ee20e
chore: update node version and appropriate git workflows (#31486)
## 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>
2024-03-26 14:12:11 +03:00
Apeksha Bhosale
b716eb6f0c
chore: removed config logs from debugger (#32049)
## 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 -->
2024-03-26 14:10:22 +05:30
sneha122
bd8850a48d
feat: show slash command prompt on focus in property pane (#31920)
## 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”>
2024-03-22 15:14:08 +05:30
albinAppsmith
8f70909382
feat: Added unit test for query/js delete - next item selection (#31915)
## 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 -->
2024-03-19 15:17:49 +05:30
Rishabh Rathod
fc453c8b5f
chore: Remove JS_VARIABLE_MUTATED event (#31884)
## 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 -->
2024-03-18 21:39:11 +05:30
Rajat Agrawal
129b062fac
chore: Chore/conditional eval trigger (#31487)
Fixes #31190

## Automation

/ok-to-test tags="@tag.All"<!-- This is an auto-generated comment:
Cypress test results -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8296786849>
> Commit: `e17d78e04a1f4fe0539325316400b8378bb08995`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8296786849&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

- **New Features**
- Enhanced JavaScript function execution to include an `onPageLoad`
parameter, enabling actions to be triggered upon page load.
- **Enhancements**
- Improved logging for widget panel configurations and key differences
in objects for better debugging and analysis.
- **Refactor**
- Updated evaluation handling to conditionally execute based on page
load, optimizing the data tree evaluation process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 12:48:24 +05:30
Rajat Agrawal
6bdfb7edac
chore: Remove analytics logging of JS functions as it causes a performance b… (#31663)
…ottleneck

Fixes #31160

## 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 `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  -->
> [!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


- **Refactor**
	- Improved analytics tracking by refining the analytics codebase.
	- Removed unused imports and functions related to analytics.
- Refactored the `logDynamicTriggerExecution` function for better
performance.
- Eliminated the usage of `logJSFunctionExecution` function in the
`handleEvalWorkerMessage`.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 11:50:13 +05:30
Hetu Nandu
bbe6f2d8f3
fix: remove counter of cmd + click navigation usage (#31830)
## Description

Fixes the blocker issue for canvas resize by removing the counter of cmd
+ click as that goes to local storage and that is somehow causing this
issue


Fixes #31820

## 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/8293559664>
> Commit: `00eee43d89c9df1071a3a1daca449629e48386ca`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8293559664&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 the widget selection process by streamlining the tracking and
storage method within the application.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 15:24:26 +05:30
Hetu Nandu
ad54bfcd45
chore: Add Create as a Widget SelectionRequestType (#31799)
## Description

Adds a `SelectionRequestType.Create` and enhance `widgetUrl` to have add
view. When `Create` is selected, it will navigate to the `widgetUrl`
with add view

Fixes #30578

## Automation

/ok-to-test tags="@tags.Widget"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8292718827>
> Commit: `231b88cc2c070f9286558b05e36bb1e0b84c7817`
> Cypress dashboard: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8292718827&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank"> Click here!</a>
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts
</ol>
> To know the list of identified flaky tests - <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">Refer 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 URL building capabilities to support additional view options
in the app.
- Improved widget selection process to facilitate easier addition and
manipulation of widgets on the canvas.

- **Refactor**
- Updated selection logic to include a new `Create` selection type,
streamlining the process of adding new widgets.

- **Chores**
- Internal updates to support the new selection type across different
components and sagas.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 14:57:06 +05:30
Hetu Nandu
e99cc39e47
chore: Block Selections when Canvas is in Side by Side mode (#31587)
## Description

This pull request aims to enhance the user experience within the
application by modifying the canvas behavior when it is displayed in
"Side by Side" mode alongside Queries or JavaScript sections. The key
change is the disabling of direct selections on the canvas, allowing
interactions with canvas elements only through cmd + click or by
clicking on the widget's name. This adjustment is intended to facilitate
a view-only mode for the canvas during Queries or JS editing, thereby
improving layout and user interaction.

Additionally, the PR introduces enhancements to the application's
testing framework, focusing on improving test reliability in scenarios
involving UI interaction and state changes. Notable updates include:

- Improved error tooltip handling in CurrencyInput_spec.js.
- Ensured page state saving before verifying element presence in
Listv2_BasicChildWidgetInteraction_spec.js.
- Replaced cy.wait("@updateLayout") with cy.assertPageSave() and
introduced a delay in Listv2_spec.js to accommodate functionality
changes.
- Implemented visibility checks in
TableV2_Button_Icon_validation_spec.js to prevent timing-related test
failures.
These technical updates collectively aim to bolster the application's
testing framework, enhancing the reliability and accuracy of automated
tests, especially in UI interaction and state change scenarios.


#### PR fixes following issue(s)
Fixes #30864

## Automation

/ok-to-test tags="@tag.Widget"
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8259916944>
> Commit: `15e1cf937a9d15adaea68e16a55006d993a07cbf`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8259916944&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**
	- Added new constants for widget selection and focus management.
- Introduced a new event type for tracking widget selections in code
mode.
- **Tests**
- Enhanced test assertions and interactions for better reliability and
error handling in various widgets.
- **Refactor**
- Improved widget selection logic and URL handling for a more intuitive
user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-13 11:53:49 +05:30
Rahul Barwal
1617527799
fix: Handle widget selection on modal closure when url changes. (#31702)
## Description

<ins>Root cause</ins>
In the case of `Vehicle maintenence app` the problem was when you had
modal open and clicked on appsmith logo - it triggered evaluations,
which in turn closed the modal -> and modal saga called select widget
saga (to select the main container)

This PR adds a check in the widget selection saga to ensure that we dont
run the selection logic if we are not on the editor url.

Fixes #31614
_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.Modal,@tag.MainContainer,@tag.Container"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8249215900>
> Commit: `f9aee9ac5e03c556782df6b8306ddc75261e2d10`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8249215900&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

- **Refactor**
- Improved the selection process of widgets by checking if the user is
on the editor page, enhancing the app usability and performance.
- Added a condition to the selectWidgetSaga function to ensure actions
are performed only when the current URL is on the editor page.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-13 10:47:45 +05:30
Shrikant Sharat Kandula
1eb7f0e171
chore: Remove "Save theme" functionality (#31481)
This is deleting a defunct feature.

[Slack
thread](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1709621165627549).
2024-03-12 18:54:39 +05:30
sneha122
c5ed198383
chore: execute action event updated with source (#31662) 2024-03-12 15:36:33 +05:30
sneha122
1da73775b8
chore: create action source instrumentation added (#31585)
## Description

Added server side create action instrumentation for following cases:
Action | Source | Frontend/Backend | Tests Added?
-- | -- | -- | --
Create Action / query from any other place in app (entity explorer /
datasource preview / ombinar) | self | source sent from frontend |
Cypress
Drag a table widget → Click connect data → Select datasource → select
table → click on connect data | one-click-binding | source sent from
frontend | Cypress
Generate CRUD triggered from new page menu or datasource preview |
generate-crud-page | source set in backend | No
When page is cloned | clone-page | source set in backend | No
When application is forked | fork-application | source set in backend |
No

#### PR fixes following issue(s)
Fixes #31173 
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [x] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## 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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Enhanced event tracking capabilities by introducing an enumeration to
track the source of action creation for analytics.

- **Enhancements**
- Improved action creation flow by specifying the source in various
components, aiding in precise analytics and debugging.
- Streamlined analytics properties method across services for
consistency and simplicity.

- **Bug Fixes**
- Adjusted assertion logic in Cypress tests to validate the source of
action creation accurately, ensuring reliability in automated testing.

- **Refactor**
- Simplified method signatures and logic in server-side analytics
handling for better maintainability.

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

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-03-11 10:22:24 +05:30
Jacques Ikot
78f269bcc8
feat: drag and drop building block on canvas with skeleton loader (#31406)
## Description
**Goal**
To allow users drag and drop building blocks on the canvas just like
widgets today. We are also implementing a loading state with the
platform skeleton component immediately the user drops the block on the
canvas.

**Why**
The dropping of building blocks needs to make an API call to the backend
to process adding the building block functionality to the users app.
This loading skeleton acts as a placeholder for the block while the API
call is processing.

**How**
1. We had listed the building blocks in a previous
[PR](https://github.com/appsmithorg/appsmith/pull/31199)
2. Created a new saga to handle widget and building block addition
called `addUIEntitySaga`
3. The saga handles widget addition like it did previously, but also
handles building block addition to canvas.

#### PR fixes following issue(s)
Fixes #31314 

#### Media

#### Type of change
> Please delete options that are not relevant.
- New feature (non-breaking change which adds functionality)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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 drag-and-drop functionality for building blocks within the
canvas editor.
- Added a new feature flag to enable/disable drag-and-drop building
blocks.
- Implemented new UI components such as `SeeMoreButton`, `UIEntityList`,
and `UIEntitySidebar` for enhanced widget management and exploration.
- Enhanced widget sidebar with improved search and filter capabilities.

- **Enhancements**
- Updated various components and sagas to support the new drag-and-drop
functionality and building blocks management.
- Improved loading and organization of UI explorer items, including
widgets and building blocks.

- **Refactor**
- Adjusted import paths and reorganized imports across multiple files
for better code maintenance.
- Consolidated widget addition logic under a unified saga for handling
different UI entity types.

- **Bug Fixes**
- Fixed the directory structure for the `useIsEditorPaneSegmentsEnabled`
hook to reflect recent changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-08 19:59:29 +05:30
Nilesh Sarupriya
53f355a830
chore: change saas authentication to context based (#31064)
## Description
> Add context based authentication instead of being bounded by page.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> N/A

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
- [x] Manual

#### Test Plan
> N/A

#### Issues raised during DP testing
> N/A

## 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
- [ ] 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
- [ ] 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**
- Enhanced request handling for Appsmith tokens with additional
parameters for broader context.
    - Streamlined integration processes with new data transfer objects.
- **Refactor**
- Consolidated integration functionalities for improved code
reusability.
    - Optimized authentication process with updated method signatures.
- **Documentation**
- Updates in user and developer interactions with the API, focusing on
token requests and integrations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
Co-authored-by: Ayush Pahwa <ayushpahwa96@gmail.com>
2024-03-07 15:36:31 +05:30
Ayush Pahwa
77d5af1408
feat: workflow analytics code split and housekeeping (#31425)
## Description
This pr is for code splitting of analytics events for workflows project.
It also does a pending code split for the jsPaneSagas which got missed
during the audit logs feature release. [EE
PR](https://github.com/appsmithorg/appsmith-ee/pull/3636)

Changelog
- Added a context of parent for packages and workflows so the analytics
events can have extra information.
- Updated code split for audit logs feature.

#### PR fixes following issue(s)
Fixes #31355 

#### Type of change

- New feature (non-breaking change which adds functionality)

#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Enhanced analytics tracking for specific actions in the application,
providing detailed insights into user behavior and action success rates.
- Introduced context-aware data points for optimized analytics data
collection, including parent context extraction from URLs.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-04 15:33:05 +05:30
Hetu Nandu
1d4198048c
chore: Debugger Split states (#31043)
## Description

Creates local states for the debugger for Query Pane, Api Pane and JS
Pane and separates it from the main Canvas Debugger state. This is done
so that in Split pane, the states of Action Pane debugger can be
different from the Canvas Debugger state. To keep handling the
Fullscreen Debugger experience, a new hook `useDebuggerTriggerClick` is
introduced which opens the correct debugger based on the IDE state.

Also removes the Error and Logs from the Query / Api / JS Debuggers when
in split screen mode for a cleaner debugging experience

##### This change removes the expectation of having a common debugger
state that follows around as the user navigates in the IDE. Instead it
create a new debugger state per entity item. The tests have been updated
to reflect this



#### PR fixes following issue(s)
Fixes #30836
Fixes #30342


#### Media


#### Type of change
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)

## Testing

#### How Has This Been Tested?

- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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
2024-02-29 11:53:57 +05:30
Hetu Nandu
3134224069
chore: IDE persistence (#31122)
## Description

Adds local persistence to IDE level features
- IDE Tabs
- IDE View mode (Split screen preference)


To achieve this, added a new option: `persist` in Focus Retention. This
will persist any Focus state and restore it when requested for the first
time.




#### PR fixes following issue(s)
Fixes #31135
Fixes #31025

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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 the ability to restore the IDE editor view mode to its last
state.
- Enhanced IDE tabs functionality with separate handling for query and
JS tabs.
- Added persistence of certain IDE states to local storage for improved
user experience.

- **Refactor**
- Updated focus management strategies to accommodate new IDE features
and state persistence.
- Streamlined IDE actions and sagas for better state management and
action handling.

- **Bug Fixes**
- Fixed an issue with the visibility of buttons in the IDE's segmented
header based on specific conditions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-27 10:42:27 +05:30
Ashok Kumar M
d35ad5e842
fix: Anvil Bug fixes for R1 (#31066)
> Pull Request Template
>
> Use this template to quickly create a well written pull request.
Delete all quotes before creating the pull request.
>
## Description
This PR has multiple bug fixes
- Widget boundary showing up in preview mode.
- Widget flickering when space distribution changes.
- highlights seem blurred near table widget
- scrolling to widget when clicked from entity explorer.
- Adding bindings for Zones and Sections on entity explorer.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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 ease-in animation for flexgrow value changes in layout
components.
- Enhanced canvas dragging experience by updating z-index based on
activation state.
- **Improvements**
	- Optimized widget rendering by utilizing unique widget IDs.
- Improved code maintainability with the introduction of a styled
`canvas` component for better styling encapsulation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-27 10:11:55 +05:30
albinAppsmith
3757f3197f
fix: Module instance delete navigation (#31140)
## Description

This PR addresses the below issues,
1. In App editor, deleting a package is not redirecting to add screen
2. In package Editor, deleting a js/query should fall back to the main
3. Icon not displaying for tabs of package instance

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/30894

#### Type of change

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Added IDE type detection for enhanced redirection logic in code
editing workflows.
- Introduced customizable module icons in the Explorer view for better
visual differentiation.

- **Enhancements**
- Improved IDE tab management to support JavaScript and Query modules,
ensuring a smoother development experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-20 10:31:57 +05:30
Rahul Barwal
1be0d061c4
fix: updates position of start from templates dialog. (#31194)
## Description

Remove unused code and update imports in the
CreateNewAppFromTemplatesWrapper component.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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


- **Refactor**
- Simplified the modal management for creating new applications from
templates by integrating direct prop usage for open/close actions.
- **Chores**
- Cleaned up and reordered imports across various files for better
organization.
- **Bug Fixes**
- Fixed modal close functionality to ensure a smoother user experience
when creating new applications from templates.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-20 01:43:33 +05:30
Rahul Barwal
d6fadc2dc2
fix: move create app from template flow logic from state to redux (#31177)
## Description
This PR attempts to move logic from state to redux. 
For some reason state logic is not getting transferred to release and
prod sites.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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 modal for creating applications from templates,
enhancing user experience.
- **Enhancements**
- Improved state management for the create app from templates modal
using Redux, ensuring smoother user interactions.
- **Refactor**
- Streamlined the application creation process from templates by
removing redundant code and utilizing Redux actions for better
maintainability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-16 16:04:35 +05:30
Nilesh Sarupriya
c267965090
chore: refactor curl import API to support context type (#30934)
## Description

Support curl imports for different contexts. 

### Server changes

Previous API: 

`/api/v1/import?type=CURL&pageId={pageId}&name=Api2&workspaceId={workspaceId}`

New API: 
With context type, it will create for the specific context.

`/api/v1/import?type=CURL&contextId={contextId}&name=Api1&workspaceId={workspaceId}&contextType={contextType}`

Without context type, it will create for the page.

`/api/v1/import?type=CURL&contextId={contextId}&name=Api1&workspaceId={workspaceId}`

### Client changes
- Integrate api changes for curl import. Updated request params type and
interfaces for the saga functions
- Updated the form value types for the curl import editor



#### PR fixes following issue(s)
Fixes [[Task]: Curl Import isn't
working.](https://github.com/appsmithorg/appsmith/issues/30933)

#### Media
> N/A

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
- [x] Manual (using postman)
- [x] JUnit (existing test cases should work)

#### Test Plan
> N/A

#### Issues raised during DP testing
> None

## 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
- [ ] 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

## Summary by CodeRabbit

- **New Features**
- Enhanced API import functionality with a new context-aware mechanism,
allowing for more flexible integration within different parts of the
application.
- Updated various components and services to support the new contextId
and contextType parameters for improved data handling and redirection
logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
Co-authored-by: Ayush Pahwa <ayushpahwa96@gmail.com>
2024-02-14 12:18:30 +05:30
Apeksha Bhosale
c655aea15c
chore: Import debugger fixes (#31080)
## Description
To add debugger error for import path for module instance on EE, this PR
enables code to be extended on EE


#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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

- **Refactor**
- Updated import paths and references for `ENTITY_TYPE` to
`EntityTypeValue` across various components and utilities for improved
code consistency.
- Reorganized import statements related to `AppsmithConsole` utilities
and constants to enhance code maintainability.
- Adjusted usage of enums and types, specifically for entity and
platform error handling, to align with updated import paths.

- **New Features**
- Introduced utility functions for handling entity types and platform
errors in AppsmithConsole, including new constants and error retrieval
functions.
- Added a new enum value `MISSING_MODULE` to better categorize log types
in debugging scenarios.

- **Bug Fixes**
- Implemented changes to error logging and handling mechanisms,
including the addition of new case handling for
`LOG_TYPE.MISSING_MODULE` in debugger logs, to improve the debugging
experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-14 12:00:18 +05:30
Vemparala Surya Vamsi
33da769afb
chore: Removed sending redundant mode parameter in consolidated api (#31097)
## Description
Removed sending redundant mode parameter in consolidated api.
#### PR fixes following issue(s)
Fixes #31096

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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

- **Refactor**
- Updated the initialization process by simplifying parameters,
enhancing error reporting.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-13 16:46:38 +05:30
Vemparala Surya Vamsi
10cf6cf962
chore: Removed dependency of evaluatedValues from Widgets and formEvaluationSaga (#31047) 2024-02-13 10:43:17 +05:30
Rudraprasad Das
b458bd09b2
fix: autocommit ui issues (#30887)
## Description
- Adds initial checks in Sagas to avoid showing the auto-commit progress
bar unnecessarily
- Adds component-level checks to avoid rendering progress when
auto-commit is disabled
- Adds logic to remove branch tab from git settings modal when neither
default branch nor protected branch permissions are present

#### PR fixes following issue(s)
Fixes #30628
Fixes #30631 
Fixes #30706 
Fixes #30704 
Fixes #30737


#### Media
<img width="1726" alt="image"
src="https://github.com/appsmithorg/appsmith/assets/8724051/5afe1455-6496-447a-87ff-f67d4efea39e">



#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Enhanced autocommit functionality with improved progress polling,
error handling, and branch tabs visibility based on permissions.
- **Refactor**
- Adjusted autocommit progress polling logic and action types for better
performance and reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-12 10:53:48 +05:30
Rudraprasad Das
5c74768afc
chore: remove git release feature flags (#30962)
## Description
Removes git related feature flags
- `release_git_connct_v2_enabled`
- `release_git_status_lite_enabled`

#### PR fixes following issue(s)
Fixes #30961

#### Media

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Enhanced Git synchronization features including better handling of
workspace creation, DSL additions, and branch protection settings.
- **Refactor**
- Updated Git connection methods and deployment processes for improved
efficiency and reliability.
- Introduced new variables and methods for more precise control over Git
settings and operations.
- **Tests**
- Added and refactored Cypress end-to-end tests to validate new Git
functionalities and synchronization processes.
- **Style**
- Updated components to include `data-testId` attributes for improved
testability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-09 10:22:47 +05:30
Diljit
007e70a757
fix: Remove stale values in Query form on view change (#30975)
## Description
- Add a Mixpanel event for Max limit validation for Multi file picker
- Fix the bug where stale values of the Query pane form gets populated
in the Query editor when changing views.

Fixes # (issue number)
https://github.com/appsmithorg/appsmith-ee/issues/3499
2024-02-09 09:36:45 +05:30
Vemparala Surya Vamsi
b7be2e3b6e
chore: Initiate execution of google.api script at editor level (#30837)
## Description
Earlier we were executing the google.api script quiet early during page
load for every route. We have now initiated as lazily as possible at the
datasource editor component level.

#### PR fixes following issue(s)
Fixes #30656

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [x] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## 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
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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 dynamic loading of the Google API script to enhance
application configuration flexibility.
- **Refactor**
- Removed static Google APIs JavaScript library loading from
`index.html`.
	- Enhanced `DatasourcesSagas` with new Google API execution logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-08 15:17:19 +05:30
Rishabh Rathod
739f7ea098
fix: Module Debugger error CE change and setter type fix (#30848)
## Description

- Module Instance Debugger CE fixes
- fix for setter method params type being incorrect example:-
`RadioGrp1.setData(value:string)` instead of
`RadioGrp1.setData(value:[?])` as we default to string when type was
array.


#### PR fixes following issue(s)
Fixes #30872 


#### Type of change

- Bug fix (non-breaking change which fixes an issue)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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

## Summary by CodeRabbit

- **New Features**
- Enhanced type conversion functionality to support more types,
improving the development experience.
- **Improvements**
- Added an optional `entityName` field for better entity identification.
	- Updated error messages for plugin actions to be more descriptive.
- **Bug Fixes**
- Fixed data type inconsistencies across various widgets to ensure
uniformity in data handling.
- **Refactor**
- Refactored certain sagas for improved code maintainability and
readability.
- **Tests**
	- Adjusted widget tests to reflect the changes in data type handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-07 16:36:01 +05:30
Hetu Nandu
f36f73ef44
chore: Handle Editor Pane Segments with an additional flag (#30942)
## Description

Adds an additional feature flag to control the release of Editor Pane
segments

#### PR fixes following issue(s)
Fixes #30939 

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] 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**
- Enhanced user interface customization by introducing a new feature
flag to enable editor pane segments.
- **Refactor**
- Updated components to ensure a consistent approach in utilizing the
new feature flag for editor pane segments.
- **Bug Fixes**
- Improved reliability and user experience by fixing inconsistencies in
feature flag usage across editor panes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-02-07 12:10:33 +05:30