## Description
- Locator fixes for cy tests
- Missing saga for discard and merge
- New component for hot keys
Fixes https://github.com/appsmithorg/appsmith/issues/37821
Fixes https://github.com/appsmithorg/appsmith/issues/37822
Fixes https://github.com/appsmithorg/appsmith/issues/37824
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12649057943>
> Commit: 94c57d0a2398fca8e6cbb4be573586aa98dffbe1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12649057943&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Tue, 07 Jan 2025 10:42:55 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Added repository limit error modal to handle scenarios when repository
limits are reached.
- Introduced Git hot keys for quick access to Git operations.
- Enhanced Git synchronization functionality with new merge and discard
change capabilities.
- Integrated feature flag handling in test suites for Git-related
functionalities.
- **Improvements**
- Standardized test identifiers across Git-related components.
- Refined Git modal interactions and state management.
- Updated locator references for more consistent testing.
- Improved user feedback with success notifications for branch
deletions.
- **Bug Fixes**
- Resolved issues with branch switching and URL handling.
- Improved error handling in Git synchronization processes.
- **Testing**
- Updated Cypress test suites with new feature flag interceptors.
- Enhanced test coverage for Git operations and modal interactions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds CE changes for the paragon integrations, with this whenever
anybody is using CE version, paragon integrations will be visible but
once they click on it, it will ask for them to put in email id and
request access.
It's counterpart EE PR handles the paragon integration creation and
authorisation in appsmith.
EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5859
EE PR which has both CE and EE changes to ensure all things are working
smoothly: https://github.com/appsmithorg/appsmith-ee/pull/5866
Fixes #`38406`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Datasource"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12627633263>
> Commit: 9c1e06b557bc8d5d0d59e7bad3e70df6582900fa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12627633263&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Mon, 06 Jan 2025 07:10:57 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Added support for External SaaS datasources and plugins.
- Introduced new actions and configurations for External SaaS
integration.
- **Refactor**
- Restructured datasource-related sagas and import paths.
- Updated selectors and constants to support new plugin type.
- **Code Improvements**
- Enhanced datasource management and integration capabilities.
- Improved modularity of saga functions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
- Git mod integration with applications behind feature flag
Fixes#37815Fixes#37816Fixes#37817Fixes#37818Fixes#37819Fixes#37820
## 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/12526603607>
> Commit: 19f3ca0a35b16b25b2cff8700e2df4b2a497e7fe
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12526603607&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 28 Dec 2024 15:57:13 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced various new hooks for Git functionalities, including
`useGitModEnabled`, `useGitCurrentBranch`, `useGitProtectedMode`, and
`useGitConnected`.
- Added a new component `DeployButton` to manage deployment actions.
- Integrated `ConnectSuccessModal` to enhance user feedback upon
successful Git connection.
- Added `GitImportModal` for improved Git import functionality.
- Introduced `GlobalProfileView` for managing and displaying user
profile information.
- Added a new icon, `CloudIconV2`, to the icon provider.
- Implemented `fetchGlobalSSHKey` and `gitImport` sagas for better state
management.
- **Improvements**
- Enhanced handling of Git-related states and actions across multiple
components and sagas.
- Streamlined selector usage for determining preview mode by replacing
`combinedPreviewModeSelector` with `selectCombinedPreviewMode`.
- Updated the `DeployPreview` component to manage success feedback and
handle commit operations more effectively.
- Improved the `StatusChangesView` component by adding a callout for
migration messages.
- Added new transformers for application status handling.
- **Bug Fixes**
- Updated error handling and loading states across various actions and
components to improve reliability.
- **Refactor**
- Refactored action creators to use `createArtifactAction` instead of
`createSingleArtifactAction` for consistency and clarity.
- Consolidated Git import and connection logic to improve modularity and
maintainability.
- Modified the `Header` component to utilize
`GitApplicationContextProvider` for managing Git-related state.
- Updated various components to utilize the new
`selectCombinedPreviewMode` selector for improved state management.
- Refactored the `DeployPreview` component to enhance its functionality
and styling consistency.
- Enhanced the `applicationStatusTransformer` to handle multiple status
transformations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Debounced handleActionUpdate actions together with bufferedActions, this
has reduced the webworker scripting and LCP by about 25-30% on a windows
machine.
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/12542044958>
> Commit: 834a437d377baf45cc9c187eedaff261b7de6155
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12542044958&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 30 Dec 2024 06:24:18 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced action data handling and evaluation mechanisms
- Improved Redux action processing for more efficient updates
- **Refactor**
- Streamlined saga logic for action data management
- Updated type definitions to improve code clarity and type safety
- **Tests**
- Added comprehensive test cases for action data buffering and
consolidation
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Remove new relic browser agent
- Add faro sdk to capture frontend perf metrics and traces.
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/12490844984>
> Commit: c9d4264027467bf33e1de519eb69c7762b6e7f75
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12490844984&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 25 Dec 2024 09:33:26 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced new environment variable `APPSMITH_HOSTNAME` for dynamic
hostname configuration in HTML files.
- Enhanced telemetry capabilities with new imports and updated types for
better observability.
- Added `tracingUrl` under the observability section in configuration
files for improved telemetry tracking.
- **Bug Fixes**
- Adjusted telemetry data handling to utilize new `Attributes` type for
improved consistency.
- **Documentation**
- Updated import paths for various telemetry-related components to
reflect new module organization.
- **Chores**
- Removed deprecated telemetry configurations and streamlined build
processes.
- Updated Nginx configuration to reflect new telemetry parameters.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Today, when a user gives only View/Edit access to a Datasource, the
schema tables are still being seen on the Datasource tabs while it
doesn't show on the Datasource Editor page. This has been fixed with
this PR. It should only be seen when Datasource has create action
permissions, hence we show the "We can’t show the schema for this
datasource" screen in this case.
- When the user has not given View access to a Datasource, the UI is
broken in Datasource tab. This has been fixed with this PR. We now show
the No access state in this case.
**BEFORE**:
When view access is not given:
<img width="1147" alt="Screenshot 2024-12-20 at 5 52 58 PM"
src="https://github.com/user-attachments/assets/c1d1fd39-d6d3-4fd8-99bf-895698f61490"
/>
When create action permission is not given but view access is given:
<img width="1138" alt="Screenshot 2024-12-20 at 5 54 10 PM"
src="https://github.com/user-attachments/assets/abf0aa86-e541-4453-b7e4-071d123f7a60"
/>
**AFTER**:
When view access is not given:
<img width="1136" alt="Screenshot 2024-12-20 at 5 58 22 PM"
src="https://github.com/user-attachments/assets/e160250b-963c-457e-81b1-380aef1332a1"
/>
When create action permission is not given but view access is given:
<img width="1139" alt="Screenshot 2024-12-20 at 5 57 53 PM"
src="https://github.com/user-attachments/assets/1967a657-622c-46f7-b6d4-78451b6106f0"
/>
Fixes [#38093](https://github.com/appsmithorg/appsmith/issues/38093)
## Automation
/ok-to-test tags="@tag.Sanity, @tag.Datasource, @tag.IDE, @tag.JS,
@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12452839374>
> Commit: ee5bc1774c02b4b29a702c8baefbad35390708c3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12452839374&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Datasource, @tag.IDE, @tag.JS, @tag.Git`
> Spec:
> <hr>Mon, 23 Dec 2024 08:29:06 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new icons and improved conditional rendering for datasource
components.
- Added a "not found" message for empty datasource options.
- Enhanced user feedback with clearer messaging for missing resources.
- **Bug Fixes**
- Adjusted rendering logic to ensure edit buttons only appear when both
conditions are met.
- **Enhancements**
- Improved permission checks and logic for managing datasource
visibility.
- Streamlined component logic for better readability and
maintainability.
- Enhanced error handling practices in saga functions.
- **Tests**
- Simplified test structure by removing unnecessary context providers.
- **Chores**
- Updated import statements and component names for consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This is a refactor PR to support auto pull of packages on page load.
1. adds an additional property on the consolidated API which reflects if
the application needs to upgrade it's packages (`packagePullStatus`)
2. A scaffold component to be extended in EE to show the package pull
status as it's called in parallel to consolidated API and is
non-blocking to the app's first page load
Not this is only relevant to the edit mode of the application
PR for https://github.com/appsmithorg/appsmith-ee/pull/5745
## 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/12349195312>
> Commit: 9112f8a148a1f12c3f8cb3d59606d72afb962055
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12349195312&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 16 Dec 2024 12:30:28 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new `PackageUpgradeStatus` component for future use.
- Added a new enumeration `PACKAGE_PULL_STATUS` with status constants.
- **Enhancements**
- Updated `setupPageAction` to accept additional parameters for improved
data handling.
- Enhanced error handling and logic in methods related to loading
application data and managing plugins.
- **Bug Fixes**
- Adjusted the argument structure for the `setupPage` method to ensure
compatibility with updated action handling.
- **Documentation**
- Updated interfaces and method signatures to reflect new parameters and
structures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Add evalContextCache to reduce the number of times the evalContext is created from the contextTree
- remove resetWorkerGlobalScope execution before every evalSync
- Instantiate the evalWorker in src/index.tsx
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/12295048843>
> Commit: 04b1e859b02282ba9efa96aea25acc9f20098061
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12295048843&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 12 Dec 2024 12:21:04 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new property `actionNames` to enhance action tracking
within JavaScript action entities.
- Added a new feature flag `release_evaluation_scope_cache` for improved
feature management.
- Implemented a new function `isPropertyAnEntityAction` to identify
action properties in JavaScript entities.
- Enhanced the `loadAppEntities` method to improve JavaScript library
loading processes.
- Updated the evaluation context initialization process to utilize
`getDataTreeContext`.
- Expanded the `WIDGET_CONFIG_MAP` to include detailed configurations
for various widget types.
- **Bug Fixes**
- Enhanced error handling for unsafe function calls in evaluation logic.
- Improved error handling and logging for library installation and
uninstallation processes.
- **Tests**
- Expanded test coverage for action bindings and dependencies in the
`DataTreeEvaluator`.
- Updated tests to validate the new `actionNames` property and its
integration.
- Modified tests to ensure correct functionality of the `evaluateSync`
function.
- Added new test cases to assess the behavior of the evaluator with
widget updates.
- **Chores**
- Streamlined imports and initialization of worker instances across
various files.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
We don't use the websocket connection for anything of consequence. This
PR removes it and the `socket-io` dependency from the client.
The RTS still has it, will be removed in a subsequent PR.
## Automation
/test sanity
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12062399334>
> Commit: 4f018b1958e82ca29d8a7492ec0bf4529f43b0ef
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12062399334&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 28 Nov 2024 04:55:02 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- None
- **Bug Fixes**
- None
- **Refactor**
- Removed websocket and collaborative editing functionality, simplifying
the application architecture.
- Eliminated related constants, actions, reducers, and sagas to
streamline codebase.
- **Chores**
- Updated test configurations by removing references to websocket sagas.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
We're adding `x-appsmith-version` to every request from the client. If
server sees a request with a `x-appsmith-version` that doesn't match its
own, it rejects. If the server sees a request _without_ any
`x-appsmith-version` header, we don't reject it... for now.
On the client, when server responds with the "version mismatch" error,
we trigger the "There's a new version, please refresh" toast UI flow.
This is a step towards removing our dependency on websockets and
client—RTS connection.
## Automation
/test sanity
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12029721517>
> Commit: c4321f7addb2be9c0ca6a7fe64308f13f931a1c8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12029721517&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 26 Nov 2024 12:28:32 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced a custom header for API requests to include application
version.
- Added specific error handling for 400 Bad Request errors, enhancing
user feedback on version mismatches.
- **Improvements**
- Enhanced error handling for version mismatches, providing clearer
error messages.
- Simplified version update handling, focusing on logging and user
prompts without state management.
- Improved default handling for application version configuration to
prevent undefined values.
- **Chores**
- Removed outdated version state management functions to streamline
code.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawan@appsmith.com>
## Description
Updating generate page interaction to show it in a modal following the
IDE 2.0 interaction pattern
Fixes [#32952](https://github.com/appsmithorg/appsmith/issues/32952)
## 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/11900113834>
> Commit: 3903c44fe5a6c7db0d22d9cf982c28a1380f4546
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11900113834&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 18 Nov 2024 21:26:44 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced a modal for generating pages, enhancing user interaction.
- Added new action types and constants for managing page generation
processes.
- Updated UI messages for clarity in the page generation context.
- Improved handling of datasource selection and page generation in
various components.
- **Bug Fixes**
- Improved error handling in various components to prevent silent
failures.
- **Refactor**
- Streamlined routing logic by removing deprecated paths and functions.
- Transitioned from direct navigation to modal-based interactions for
page generation.
- Enhanced control flow and error handling within components.
- **Chores**
- Updated import paths for better organization of action-related
functions within the Redux architecture.
- **Tests**
- Enhanced test cases for CRUD operations, ensuring better validation
and error handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This PR adds spans for fetching consolidated api from client perspective
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced API call functionality with improved error handling and
response validation.
- Added tracing for better observability during API interactions.
- **Bug Fixes**
- Refined error handling for specific scenarios, including unauthorized
access.
- **Documentation**
- Updated function signatures for better clarity on API response
handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Refactored getUnevaluatedDataTree selector to be more resilient to state
changes thereby reselect cache gets triggered less often. Identified an
action which was firing the selectors unnecessarily, fixed that as well.
For our customer during page load it used to take about 800ms
cumulatively, it has now dropped to about 160ms by about 80%. This is
also an impactful selector which cumulatively takes about 50,000 seconds
for all our client systems per week, hence we focussed our optimisation
here
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11658078700>
> Commit: 557172d47b2232800355e1dc78c921d9cb56c725
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11658078700&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 04 Nov 2024 06:00:06 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **Bug Fixes**
- Improved state management by preventing unnecessary updates to loading
entities, enhancing app performance.
- **Refactor**
- Updated the `loadingEntitiesReducer` to include an equality check for
loading entities before state updates.
- Enhanced date handling capabilities in the DatePicker widget tests and
commands.
- Restructured the `DataTreeFactory` class for improved modularity and
clarity in data tree creation.
- Simplified selector functions for better readability and
maintainability in data tree selectors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Use Focus retention to store user context of the POST body format of
APIs
- Update component to use hooks instead of redux connect hoc
- remove need of passing Action ID in form data as it is redundant for
focus retention states
Fixes#36984
## Automation
/ok-to-test tags="@tag.Datasource, @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/11609483418>
> Commit: a3a1a59101773372a65ded41ea1cce3cd83ffd5f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11609483418&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource, @tag.IDE`
> Spec:
> <hr>Thu, 31 Oct 2024 10:31:09 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced a streamlined method for managing API body content types
and form data.
- Added new action creator `setExtraFormData` for enhanced form data
handling.
- **Improvements**
- Simplified the `PostBodyData` component by utilizing React hooks for
state management.
- Updated selectors and reducers to support a flatter structure for form
data, improving clarity and maintainability.
- **Updates**
- Enhanced focus elements configuration to better manage plugin action
form data within the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR is CE part of main [EE
PR](https://github.com/appsmithorg/appsmith-ee/pull/5368). This PR
implements a new ADD_ACTION blueprint operation type.
## 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/11508513702>
> Commit: ef5ed889ab5711bab162c2a947758da3726f64b5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11508513702&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 25 Oct 2024 07:17:20 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new enum for handling data source creation and updates.
- Enhanced application creation logic with updated naming conventions
based on layout features.
- Improved workspace management functionalities, including application
import and user invitation processes.
- **Bug Fixes**
- Enhanced error handling and state management across various components
and sagas.
- **Documentation**
- Added comments to clarify temporary solutions in CSS for widget
interactions.
- **Chores**
- Removed obsolete Avatar component and related files, streamlining the
design system.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR refactors the action duplication saga and action calls to remove
dependency on pageID. As far as CE code is concerned, this PR doesn't
change any functionality for the end user. Those changes are done for
workflows editor in EE.
Fixes https://github.com/appsmithorg/appsmith/issues/36886
## Automation
/test all
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11462274307>
> Commit: 04dfbfbf910c789f4da4892497ce97be952bd2cd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11462274307&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 22 Oct 2024 16:21:32 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new hook, `useHandleDuplicateClick`, enhancing action
duplication functionality.
- Added a new interface and function for generating destination ID
information.
- **Bug Fixes**
- Updated action request structure to use `destinationEntityId` for
consistency across components.
- **Documentation**
- Enhanced success message flexibility for action copy notifications.
- **Tests**
- Added unit tests for the `ActionEntityContextMenu` component to ensure
proper functionality and rendering.
- **Refactor**
- Improved context menu handling based on entity types for better user
experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Moving older components, utils and constants into the Plugin Action
Editor to complete the modularisation project.
- Update Plugin Action Editor to expect an action ID instead of fetching
it from the URL.
- Add a Readme
Fixes#34324
## 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/11363303457>
> Commit: c36241f8cb19d57365c2555a02284b72aa849a67
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11363303457&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 16 Oct 2024 12:40:23 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new utility function `formatBytes` for byte formatting.
- Added comprehensive documentation for the Plugin Action Editor module.
- **Improvements**
- Simplified action retrieval logic in the Plugin Action Editor.
- Enhanced import organization across various components for better
maintainability.
- **Bug Fixes**
- Resolved import path issues for several components and constants to
ensure correct functionality.
- **Chores**
- Updated multiple import paths to reflect the new directory structure
for improved modularity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR includes the changes to enable browser side caching of dependency map in published mode.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11338708443>
> Commit: af545a2309e259bd2b44533b6572a2cfbb53b51d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11338708443&attempt=3"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 15 Oct 2024 07:42:33 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced asynchronous profiling for web worker operations, enhancing
telemetry capabilities.
- Updated handling of the `EVAL_TREE` action to support asynchronous
processing, improving performance.
- Added a caching mechanism for computation results, optimizing data
retrieval and management.
- **Bug Fixes**
- Improved accuracy of `applicationId` extraction for fetching published
page resources.
- **Tests**
- Enhanced test cases for `DataTreeEvaluator` and caching mechanisms to
reflect realistic application states.
- **Chores**
- Updated various components to support new asynchronous logic and
caching properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
## Description
Persisting latest branch. Re-opening the branch opens it in the latest
branch
Fixes https://github.com/appsmithorg/appsmith/issues/30321
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11325191494>
> Commit: 570c6fba8b85f59c8577efda5863d19049b0ebe1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11325191494&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Mon, 14 Oct 2024 10:27:07 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced Git branch management functionality in the ApplicationCard
component.
- New utility functions for storing and retrieving the latest Git
branch.
- Improved error handling and response management for Git operations.
- Added user-specific tracking for Git branches in the AppEditorEngine.
- Introduced a new feature flag for Git branch persistence.
- New Cypress test suite to verify Git branch persistence after
switching branches.
- Added methods for asserting branch visibility and URL consistency in
the GitSync class.
- **Bug Fixes**
- Refined error handling for various sagas, ensuring accurate error
dispatching and user feedback.
- **Documentation**
- Updated function signatures and error handling descriptions in the
initialization and Git synchronization processes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In this PR, we fix the payload evaluation issue by adding a batching
mechanism.
Root cause the issue here was that using yield call in loop tends to
call stack overflow which is a known open issue in the redux-saga
library. The popular workaround to this is to add `yield delay(0` after
n number of batch.
Fixes#36383
## Automation
/test all
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11134117696>
> Commit: a3a583f880cb9d057a2f4668f1ccb0fc10714321
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11134117696&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 02 Oct 2024 01:49:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Improvements**
- Enhanced processing efficiency by introducing a batching mechanism,
allowing smoother handling of large data sets without blocking the event
loop.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: rishabhrathod01 <rishabh.rathod@appsmith.com>
## Description
Removes the parallel apiPaneReducer and queryPaneReducer and combines it
into pluginActionEditor
Fixes#36153
## 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/11231694032>
> Commit: 3a204e2902f9733be05e3b7087869d2e91ad52eb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11231694032&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 08 Oct 2024 10:15:30 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced a new constant `POST_BODY_FORM_DATA_KEY` for improved data
handling.
- Added several action creators and selectors for enhanced management of
the plugin action editor's state.
- Implemented state management for the plugin action editor's debugger.
- Added the ability to execute commands related to plugins in the
`CodeEditor` component.
- Introduced a new enumeration `DEBUGGER_TAB_KEYS` for better
organization of debugger tabs.
- **Improvements**
- Refactored import statements for better organization and reduced
complexity.
- Enhanced the `PluginActionResponse` component to focus on plugin
action state management.
- Updated the tab management logic in various components to reflect the
new plugin action state.
- Improved state management in the `QueryEditor` and `APIEditor`
components to accurately represent action processing states.
- Added error handling in the `ActionSettings` component for missing
configuration.
- **Bug Fixes**
- Updated logic in hooks to ensure proper state management for plugin
actions.
- Adjusted navigation and tab selection methods to align with the new
plugin action state management.
- Corrected test selectors for error tabs in Cypress tests to ensure
accurate UI interactions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixes#36481
/ok-to-test tags="@tag.All"
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11028542060>
> Commit: ed537d3958a3eba4502cbc32daf60c4cd814002d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11028542060&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 25 Sep 2024 08:56:31 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Enhanced API interaction with new default configurations for requests.
- Improved error handling with a centralized interceptor for managing
various API response errors.
- Introduced access control for specific API endpoints through blocked
and enabled route management.
- Streamlined environment-specific configurations for better
maintainability.
- Added functionalities for managing application themes, including
fetching, updating, and deleting themes.
- Introduced new API functions for retrieving consolidated page load
data for viewing and editing.
- Centralized access point for API services related to theming and
consolidated page load data.
- New modular structure for API request and response interceptors to
improve organization and maintainability.
- **Tests**
- Added unit tests for both API response and request interceptors to
ensure correct functionality and error handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
## Description
- Removal of release_git_autocommit_feature_enabled flag
- Removal of fallback implementation to classes which was autocommit
flag annotated
- Removal of irrelevant test cases post removal of fallback
implementation.
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.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10994151881>
> Commit: 42b43f19e4b47d70f8c9784ae1c4c67601d79412
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10994151881&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Mon, 23 Sep 2024 12:53:01 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced file operations for resource management in Git, including
methods for saving, deleting, and reading resources.
- Streamlined handling of auto-commit functionalities, making certain
features universally accessible.
- **Bug Fixes**
- Removed outdated fallback implementations for auto-commit eligibility
and Git auto-commit helpers.
- **Refactor**
- Simplified constructors and dependencies in file operation classes,
improving maintainability.
- Eliminated feature flag dependencies from various components,
including tests, focusing on core functionality.
- **Tests**
- Removed tests related to feature flags, streamlining the testing
process for auto-commit and migration functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: brayn003 <rudra@appsmith.com>
## Description
The second round of deleting unused files, `.ts` were added to the
check.
[Related EE PR](https://github.com/appsmithorg/appsmith-ee/pull/5205)
## 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/10991435044>
> Commit: 7cfbcb9f9028c7cca5f06ae5a3836762e94214ec
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10991435044&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 23 Sep 2024 10:51:02 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Expanded project file scope to include JavaScript files alongside
TypeScript files.
- **Bug Fixes**
- Removed obsolete functions and constants related to help, tour, and
API functionalities, improving overall code clarity and maintenance.
- **Chores**
- Deleted several unused files and constants across various components,
enhancing project organization and reducing clutter.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Added ESLint rule to force blank lines between statements.
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 -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10924926728>
> Commit: 34f57714a1575ee04e94e03cbcaf95e57a96c86c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10924926728&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ClientSide/Anvil/AnvilModal_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilStatsWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchGroupWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilTableWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilToolbarButtonWidgetSnapshot_spec.ts
>
<li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilZoneSectionWidgetSnapshot_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Wed, 18 Sep 2024 16:33:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
---------
Co-authored-by: Valera Melnikov <valera@appsmith.com>
## Description
This PR migrates the plugins which were old DBForm config to UQI config.
Plugins that got affected,
1. Snowflake
2. ArangoDB
3. Oracle
4. PostgreSQL
5. MySQL
6. Elasticsearch
7. DynamoDB
8. Redis
9. MSSQL
10. Redshift
Fixes#35496Fixes#35497Fixes#35500Fixes#35487Fixes#35490Fixes#35491Fixes#35499Fixes#35501Fixes#35502Fixes#35506Fixes#35890
## Automation
/ok-to-test tags="@tag.Datasource"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10897087023>
> Commit: e8fe475a48aac1e2e1f3184181ae0bed154313ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10897087023&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Tue, 17 Sep 2024 06:07:27 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced rendering logic in the Query Editor to support additional UI
component types.
- Improved handling of form evaluations and query configurations across
various plugins, including ArangoDB, DynamoDB, Elasticsearch, and
others.
- Introduced structured layouts for editor configurations, enhancing
clarity and usability in multiple database plugins.
- **Bug Fixes**
- Adjusted control flow in sagas to ensure proper handling of UI
component types, improving user interactions.
- **Chores**
- Refined JSON configurations across multiple plugins for better
organization and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
https://github.com/user-attachments/assets/764917aa-74ea-4c1b-8361-6441344227fdFixes#36281
_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/10845273743>
> Commit: 88d0b70bec732e804919a056cb0f350ae8580aa0
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10845273743&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 13 Sep 2024 09:32:43 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new optional `parentId` property for enhanced widget
selection, allowing for hierarchical management.
- Updated widget selection and deletion processes to utilize the
`parentId` for improved contextual handling based on layout type.
- **Bug Fixes**
- Enhanced logic in widget selection to ensure the correct parent ID is
used, improving overall selection accuracy.
- **Documentation**
- Updated documentation to reflect changes in widget selection and
deletion functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Updates the error handling for Access Control scenarios to show toasts
when correct permissions are not present
Fixes#36229
## Automation
/ok-to-test tags="@tag.AccessControl"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> 🔴🔴🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10807287223>
> Commit: 08edaeefb87d02f8951a38cef2ac0c608d8fe8f8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10807287223&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.AccessControl
> Spec:
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Wed, 11 Sep 2024 08:28:37 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced error handling with structured Redux actions for better state
management.
- Improved clarity in error message construction based on error types.
- **Bug Fixes**
- Refined logic for displaying toast notifications based on the `show`
parameter.
- **Documentation**
- Updated comments for better understanding of error handling logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Hi @appsmithorg/contributor-support, @rohan-arthur, @nidhi-nair
Fixes#19723
**What’s in this PR:**
1. In Postgres Plugin:
- Added two imports: PSQLException and PSQLState to identify the type of
exception and state of error.
- Added a condition to validate the empty port field.
- Removed the default port when the port is empty.
- Removed “Failed to initialize pool:” term in the error message.
2. In PostgresErrorMessages
- Added two constant value for Missing port and invalid host and port.
3. In PostgresPluginTest
- Added a test case to validate the missing port error message.
**Screenshots :**
1. If any of the field like host address, port, DB name etc is wrong -
There is a term in the error message along with the error message in the
toast "Failed to initialize pool: ". This is not required. - Fixed

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

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

**Test cases :**

**Why I didn’t provide test cases for invalid host and port :**
Those errors are triggered by the createConnectionPool method, which is
private, so we can’t access it in the test file.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved validation for PostgreSQL datasource configurations, ensuring
that a port is specified.
- Enhanced error messaging for connection issues related to missing or
invalid port and hostname.
- **Bug Fixes**
- Refined error handling during connection pool initialization for
clearer feedback on specific connection issues.
- **Tests**
- Added a test to validate behavior when the datasource configuration
has an empty port, improving coverage for validation logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Reverts appsmithorg/appsmith#36053
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved formatting of error messages for invalid data sources to
enhance clarity.
- Simplified error handling in the Postgres plugin, which may affect the
specificity of connection error messages.
- Removed an outdated error message related to invalid hostname and port
configurations in the Postgres plugin, impacting how related errors are
reported to users.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Shadow PR for https://github.com/appsmithorg/appsmith/pull/35167
Fixes #
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/test all
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10769007798>
> Commit: 3c97f02af5401c84760425557b479b1cff13fdac
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10769007798&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 09 Sep 2024 10:29:27 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced error handling for PostgreSQL connection issues with clearer
messages for missing ports and invalid hostnames.
- Improved readability of error messages in the application by
formatting them to display on separate lines.
- **Bug Fixes**
- Improved clarity in error reporting for connection pool creation
failures.
- **Tests**
- Introduced a test case to validate datasource configuration when the
port is not provided, ensuring robust validation checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: AnnaHariprasad5123 <hariprasad.anna@zemosolabs.com>
## Description
**Problem**
When deleting a List widget in the EE environment, the widget is
successfully removed, but errors are displayed in the in-app debugger.
These errors disappear upon refreshing the page, leaving users confused
as to why the errors appeared in the first place, despite the widget
being deleted correctly.
**Root Cause**
- The issue arises from the sequence in which widgets and their
associated meta widgets are deleted.
- When deleting a widget with meta widgets (e.g., a List widget):
- The main widget is removed first via the deleteWidget saga.
- Meta widgets are then deleted later during the componentWillUnmount
lifecycle method.
- The lint evaluation runs between these two processes, detecting meta
widgets still present in the state without a parent widget.
- This mismatch triggers errors in the in-app debugger, which disappear
once the page is refreshed, as the meta widgets have already been
deleted by then.
**Solution**
- We have modified the deletion process to ensure that both the main
widget and its associated meta widgets are removed within the same
action.
- Instead of handling meta widget deletion in the general deleteSaga:
- We now check for widgets with the hasMetaWidgets flag within the
deleteWidget saga.
- If such widgets are found, their meta widgets are deleted before the
main widget is removed from the layout.
- This adjustment ensures that the lint evaluation occurs after both the
main widget and its meta widgets have been removed, preventing errors in
the debugger.
Fixes#35628
## Automation
/ok-to-test tags="@tag.Widget, @tag.List, @tag.IDE, @tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10629216245>
> Commit: 56a4c85076d574cc2ebfef12d3b9f998ee1a4ece
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10629216245&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget, @tag.List, @tag.IDE, @tag.Sanity`
> Spec:
> <hr>Fri, 30 Aug 2024 09:25:02 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Enhanced testing for the list widget to include verification of the
drag, drop, and delete functionalities.
- Improved widget deletion process by ensuring related meta widgets are
also addressed during deletion.
- Updated test descriptions for better clarity and scope, specifically
focusing on deletion functionality.
- Introduced a factory for creating instances of version 2 list widgets,
streamlining widget generation.
- **Bug Fixes**
- Expanded test coverage for potential issues in widget behavior,
particularly concerning deletion.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Klona operations are generally expensive, for that reason we will be
tracking the performance of all klonas in the main thread.
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10608431935>
> Commit: cab2716f74f3747d3df64342f4d7f4972358a3e6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10608431935&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 29 Aug 2024 06:26:43 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced telemetry tracking for cloning operations across various
components, enhancing performance monitoring and debugging capabilities.
- **Bug Fixes**
- Improved observability of cloning operations, aiding in identifying
potential performance bottlenecks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Cleans out and reorganises the Redux Actions Constants file
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10489649733>
> Commit: 9fa7003f7c2d1b43a6c693cb1d34ba5cc2c11832
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10489649733&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 21 Aug 2024 13:45:56 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new interfaces for enhanced structured data handling
related to page management and property pane visibility.
- Added functionality to control widget panel visibility with a new
action.
- **Bug Fixes**
- Improved flexibility in closing property panes by adding an optional
parameter to the related function.
- **Refactor**
- Streamlined import statements for various types to improve
organization and maintainability.
- Removed unused functions and action handlers to simplify user and data
source management.
- Updated action type constants for consistency across the application.
- Removed sagas related to URL redirection and history management,
simplifying navigation handling.
- **Chores**
- Cleaned up unused imports to reduce code clutter and improve
readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Fix the following errors
### POST https://o296332.ingest.sentry.io/api/1546547/envelope/... 429
(Too Many Requests)
We have an integration with Sentry to instrument page loads and other
transactions. This is no longer used. All page load metrics are
collected using a new relic integration.
The sentry transactions api was throwing a 429 error when we exceed our
trial quota. Removing the integration should curb this error.
<img width="1181" alt="Screenshot 2024-08-15 at 1 22 28 PM"
src="https://github.com/user-attachments/assets/543c0ec1-e87f-4439-b715-e75b3a6fd3ed">
[Slack thread
](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1723699775838509)for
more context on our sentry sub exceeding its quota.
### TypeError: e.className.split is not a function at t.value
(PageLoadInstrumentation.ts:112:33)
Add a type check for string.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10400625143>
> Commit: fc83198b613a973c9a02644fc742947a92bfbd3c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10400625143&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 15 Aug 2024 08:45:49 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Removed performance tracking functionality across various components
and sagas, simplifying the codebase and reducing overhead.
- **Bug Fixes**
- No specific bug fixes were made; improvements focus on performance
tracking removal.
- **Chores**
- Eliminated unnecessary dependencies related to performance metrics,
streamlining the application's dependency management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Rename `design-system` package to `@appsmith/ads`
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10319507327>
> Commit: 65d9664dd75b750496458a6e1652e0da858e1fc6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10319507327&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 09 Aug 2024 13:47:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
- Enabled the rule `@typescript-eslint/no-explicit-any`
- Suppressed errors with comment
```
// TODO: Fix this the next time the file is edited
// eslint-disable-next-line @typescript-eslint/no-explicit-any
```
Fixes#35308
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10181176984>
> Commit: 7fc604e24fa234da7ab2ff56e0b1c715268796ee
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10181176984&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 15:00:45 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
This PR addresses below release blockers
1. Toast UI seems broken
Fixes https://github.com/appsmithorg/appsmith/issues/35274
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10159241062>
> Commit: b772f12949a34fc5b7b4d838bf96dee911da8806
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10159241062&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 09:45:47 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Improved notification handling for file size errors in the FilePicker
component.
- Enhanced messaging functionality in the OneClickBinding saga for error
and success notifications.
- Updated event handling in the AppIcon component to accept a broader
range of event types.
- **Bug Fixes**
- Updated notification method to ensure consistent user messaging across
components.
- **Chores**
- Removed outdated Toast component from module exports to streamline
imports.
- Updated CSS import path for the current design system to improve
styling consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Valera Melnikov <valera@appsmith.com>
## Description
- Multiple functions from `widgetAdditionSaga` have been removed from
the flow when adding new Anvil widgets to Canvas
- The removed functions have alternatives specific to Anvil
##Tasks
- [x] Move functions and cut down code run during Anvil widget addition
flow
- [x] Cleanup code
Fixes#34896
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10099580771>
> Commit: 50d9f0349f172ebd5cd5695a4345225ac565379c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10099580771&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 25 Jul 2024 19:31:29 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new property to manage default widget properties for
improved widget addition efficiency.
- Enhanced the application’s capability to manage and display layout
information dynamically for the main canvas.
- Added new saga functions to facilitate the addition of widgets to the
Anvil canvas, improving user interaction with suggested widgets.
- **Bug Fixes**
- Streamlined widget addition logic for better performance and
maintainability in the Anvil canvas.
- **Refactor**
- Simplified and reorganized the saga functions related to widget
addition, improving clarity and efficiency.
- Replaced legacy functions with updated methods for handling widget
properties and state management.
- **Documentation**
- Improved comments and descriptions in the code to clarify the new
logic and functionality changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
When create datasource is initiated from the API editor by clicking
"Save as datasource", it fixes the redirection back to the API editor
when `Save` is clicked for modules in package editor.
This PR also refactors the usage of typing of `actionRouteInfo` and
introduces `parentEntityId` instead of using `pageId`, `moduleId`,
`workflowId` separately.
This fix also verifies the sanity of
1. API in apps
2. API in workflows
Fixes https://github.com/appsmithorg/appsmith/issues/31506
## Automation
/ok-to-test tags="@tag.Datasource,@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10093685845>
> Commit: 785cbe3a0a42fad2f2ca1d7fb76010eb00505343
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10093685845&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource,@tag.Sanity`
> Spec:
> <hr>Thu, 25 Jul 2024 12:39:50 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new function to retrieve the current module ID, enhancing
state management.
- Added support for handling `parentEntityId` in various data source
sagas.
- **Bug Fixes**
- Improved type safety for action handling in sagas.
- **Tests**
- Added a new test suite for the `handleDatasourceCreatedSaga` to
validate its behavior upon datasource creation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->