Commit Graph

10593 Commits

Author SHA1 Message Date
subratadeypappu
d1dfa4436c
fix: resolve CVE-2025-9288 and CVE-2025-9287 in sha.js and cipher-base (#41284)
## Description
EE Shadow PR: https://github.com/appsmithorg/appsmith-ee/pull/8226

Fixes CVE-2025-9288
Fixes CVE-2025-9287

## 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/18306326151>
> Commit: 75166362114f950aa5e4d5f53793329a495b404c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18306326151&attempt=5"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 07 Oct 2025 13:45: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

* Chores
* Updated client-side dependencies and locked specific versions to
improve app stability and compatibility.
* Added resolution overrides to ensure consistent builds across
environments and reduce dependency-related issues.
* These updates are behind the scenes and do not change the user
interface or workflows.
* No impact on exported APIs; functionality remains unchanged for
end-users.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-10-08 12:25:24 +06:00
Jacques Ikot
77005b5798
fix: tab navigation not working in Fixed Layout due to event listener timing issue (#41256)
## Problem

Tab navigation between input widgets was not working in Fixed Layout
applications. Users reported that pressing the Tab key would not move
focus to the next input widget in the expected order (top-to-bottom,
left-to-right), instead following the browser's default DOM-based tab
order.

This issues was raised by an Enterprise user
[here](https://theappsmith.slack.com/archives/C0341RERY4R/p1758112042665109)

## Root Cause

The issue was caused by a **timing problem** in the `useWidgetFocus`
hook:

1. The `useEffect` hook was running immediately when the component
mounted
2. However, the canvas element ref (`ref.current`) was set later via the
React ref callback
3. This caused the event listeners for Tab navigation to never be
attached, as `ref.current` was `null` when `useEffect` ran
4. Without the custom Tab event listeners, the browser fell back to its
default tab navigation behavior

## Solution

Refactored the `useWidgetFocus` hook to attach event listeners
**immediately when the ref is set**, rather than waiting for a
`useEffect` that runs too early:

### Before (Broken):
```typescript
useEffect(() => {
  if (!ref.current) return; //  Always true - ref not set yet
  
  const handleKeyDown = (event: KeyboardEvent) => {
    if (event.key === "Tab") handleTab(event);
  };
  
  ref.current.addEventListener("keydown", handleKeyDown);
}, []); //  Runs before ref is set
```

### After (Fixed):
```typescript
const setRef = useCallback((node: HTMLElement | null) => {
  if (node === null) return;
  if (ref.current === node) return;
  
  ref.current = node;
  attachEventListeners(node); //  Attach immediately when ref is set
}, [attachEventListeners]);
```

## Why This Solution Works

1. **Correct Timing**: Event listeners are now attached immediately when
React calls the ref callback with the DOM element
2. **No Race Conditions**: Eliminates the timing issue between
`useEffect` and ref assignment
3. **Maintains Functionality**: Preserves all existing tab navigation
logic (position-based sorting, modal focus trapping, etc.)
4. **Clean Architecture**: Separates event listener attachment logic
into a reusable callback

## Testing

-  Tab navigation now works correctly in Fixed Layout applications
-  Maintains proper top-to-bottom, left-to-right tab order
-  Modal focus trapping continues to work
-  Auto Layout behavior unchanged (tab navigation disabled as intended)
-  No regressions in existing functionality

## Files Changed

- `app/client/src/utils/hooks/useWidgetFocus/useWidgetFocus.tsx` - Fixed
event listener timing
- `app/client/src/utils/hooks/useWidgetFocus/handleTab.ts` - Cleaned up
(no functional changes)
- `app/client/src/utils/hooks/useWidgetFocus/tabbable.ts` - Cleaned up
(no functional changes)

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18034264649>
> Commit: ab9af8404302eb19c243dea583160bc9e74f33aa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18034264649&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
> Spec:
> <hr>Fri, 26 Sep 2025 11:09: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

* **Bug Fixes**
  * Improved reliability of focusing widgets on click.
  * More consistent Tab key navigation across widgets.
  * Prevents unintended focus behavior in non–auto-layout mode.

* **Refactor**
* Streamlined event listener management for focus and keyboard
interactions, improving stability and reducing potential memory leaks.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-09-28 17:14:08 -07:00
Rahul Barwal
b79b160d2f
fix: updates the logic to not interfere with DSL when infinitescroll is enabled (#41217)
## Description

TLDR:
Refines TableWidgetV2 cell editability logic to disable editing when
infinite scroll is enabled.

<ins>Problem</ins>

When people toggled infinite scroll of ON and then moved it back to ON,
we were forcibly enabling editing for all columns which was wrong
product behavior.

<ins>Root cause</ins>

The utilities were putting the additables to true in DSL.
And editability logic missed a check for the infinite scroll setting,
causing cells to remain editable even when infinite scroll was active.

<ins>Solution</ins>

This PR handles the integration of infinite scroll support into
TableWidgetV2 by updating header and cell components to respect the
infiniteScrollEnabled prop. Editability is now disabled when infinite
scroll is active, ensuring consistent and predictable user experience.

Fixes #`Issue Number`  
_or_  
Fixes https://github.com/appsmithorg/appsmith-ee/issues/8144
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 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/17998257804>
> Commit: 4d0ff9c41d97c55a94a3d261b962faef492f453a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=17998257804&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Thu, 25 Sep 2025 06:15:12 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Laveena Enid <laveena@appsmith.com>
Co-authored-by: Aparna Ramachandran <101863839+btsgh@users.noreply.github.com>
Co-authored-by: Abhijeet <41686026+abhvsn@users.noreply.github.com>
Co-authored-by: yatinappsmith <84702014+yatinappsmith@users.noreply.github.com>
Co-authored-by: Nidhi <nidhi@appsmith.com>
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
Co-authored-by: Ankita Kinger <ankita@appsmith.com>
Co-authored-by: Rudraprasad Das <rudra@appsmith.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: Trisha Anand <trisha1990@gmail.com>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: Hetu Nandu <hetu@appsmith.com>
Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com>
Co-authored-by: Albin <albin@appsmith.com>
Co-authored-by: Manish Kumar <107841575+sondermanish@users.noreply.github.com>
Co-authored-by: Pawan Kumar <pawan@appsmith.com>
Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
Co-authored-by: Diljit <diljit@appsmith.com>
Co-authored-by: jacquesikot <jacquesikot@gmail.com>
Co-authored-by: Goutham Pratapa <goutham@appsmith.com>
Co-authored-by: Wyatt Walter <wyattwalter@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Laveena Enid <109572422+laveena-en@users.noreply.github.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
2025-09-25 16:01:59 +05:30
Jacques Ikot
e742df0bfa
feat: add account suspension error message for rate limiting (#41254)
## Description

This PR adds a new error message constant
`AUTH_ACCOUNT_SUSPENDED_FOR_RATE_LIMIT` to handle cases where user
accounts are suspended due to rate limiting violations.

## Changes

- Added `AUTH_ACCOUNT_SUSPENDED_FOR_RATE_LIMIT` message constant in
`messages.ts`
- Added the new error message to the approved error messages list in
`approvedErrorMessages.ts`
- The message informs users that their account is suspended for 24 hours
and suggests resetting their password to continue

## Message Content

> "Your account is suspended for 24 hours. Please reset your password to
continue"

This provides clear guidance to users on both the suspension duration
and the action they can take to resolve it.
## Automation

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

### 🔍 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/17939195425>
> Commit: 5b1a651df3483315ebea7f4096eb22e485a9a9d7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=17939195425&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Authentication`
> Spec:
> <hr>Tue, 23 Sep 2025 08:25:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Added a clear authentication message when an account is temporarily
suspended due to rate limiting (24-hour lockout). This message is now
displayed as a standard, user-visible error, helping users understand
why sign-in is blocked and when they can retry. This improves feedback
after too many attempts or excessive requests, reducing confusion and
support inquiries.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-09-24 04:36:36 -07:00
Manish Kumar
d5ee69016a
chore: enabled autocommit (#41255)
## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.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/17945463792>
> Commit: 02dea2de752e6171fa3e4cefd8650b7fcf9b332f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=17945463792&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Tue, 23 Sep 2025 12:56:31 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**
* Auto-commit now accepts author name and email so commits reflect the
initiating user.
  * Auto-commit processing can run asynchronously in the background.

* **Improvements**
* Auto-commit flows will fall back to generated author info when a
stored Git profile is unavailable.
* Controller now delegates auto-commit to a central service for
consistent responses.
  * Enhanced logging for clearer Git operation traceability.

* **Tests**
* Updated and un-skipped end-to-end and unit tests covering auto-commit
paths.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-09-24 11:31:43 +06:00
Manish Kumar
2945431dea
chore: disabled autocommit (#41246)
## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]
> 🟣 🟣 🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/17913609729>
> Commit: 2055a6b1f1f8b90651f7ad384736905e9a957e6d
> Workflow: `PR Automation test suite`
> Tags: `@tag.Git`
> Spec: ``
> <hr>Mon, 22 Sep 2025 11:18:58 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Chores**
* Temporarily disabled Git auto-commit; auto-commit operations no longer
execute.
* Auto-commit status responses now consistently report IDLE with 0%
progress.
* Users may notice no automatic commits in linked repositories; manual
commits unaffected.
* No changes to public API signatures; only response behavior adjusted.

* **Tests**
* End-to-end test for Git autocommit is skipped to reflect disabled
auto-commit.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-09-22 16:52:35 +05:30
Ankita Kinger
e1cb5d9306
fix: Adding responseMeta in query object even when the query fails (#41216)
## Description

Adding responseMeta in query object even when the query fails so the
header request id can be used by the user, if needed.

Fixes [#8024](https://github.com/appsmithorg/appsmith-ee/issues/8024)

EE PR for tests: https://github.com/appsmithorg/appsmith-ee/pull/8149

## 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/17625800361>
> Commit: c3a972f13beeaef82774a8bddb28c89cf1f783f6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=17625800361&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 11 Sep 2025 06:23:42 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Bug Fixes**
* Improved error messages and details when plugin actions or triggers
fail, providing clearer context to diagnose issues.
* Surfaces underlying response data on errors (when available), enabling
more informative failure feedback in the UI.
* Ensures action state is updated consistently after failures (clears
loading and populates data/meta when present), preventing stale or
misleading states.
* Standardized error handling across related flows without changing
successful execution behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-09-11 12:34:27 +05:30
Jacques Ikot
ae2f286a13
feat: update environment switch tooltip from business to enterprise plan (#41168)
## Summary
Updates the tooltip text for disabled environment switching to reference
"enterprise plan" instead of "business plan" to align with current
product terminology.

## Changes
- Added new `ENTERPRISE_EDITION_TEXT` constant in
`ce/constants/messages.ts`
- Updated `SwitchEnvironment` component to use the new enterprise text
constant
- Maintains backward compatibility by keeping the original
`BUSINESS_EDITION_TEXT` constant

## Files Changed
- `app/client/src/ce/constants/messages.ts` - Added new enterprise text
constant
- `app/client/src/ce/components/SwitchEnvironment/index.tsx` - Updated
tooltip to use enterprise terminology

## Testing
- [ ] Verify tooltip displays "enterprise plan" text when environment
switching is disabled
- [ ] Confirm tooltip link functionality remains unchanged

## Impact
This is a minor UI text update with no functional changes. Users will
now see consistent "enterprise plan" messaging in the environment switch
tooltip.

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16900241210>
> Commit: a462cb0c2ddcd29b19e7adadf3de8fd5f5868e9f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16900241210&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 12 Aug 2025 06:34:15 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

* **Style**
* Updated tooltip messaging to display "enterprise plan" instead of
"business edition" in relevant user interface areas (environment
switcher and data-filter tooltips). This changes only the displayed plan
name in upgrade/locked-feature tooltips across the app. No changes to
feature availability or workflows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-20 04:35:23 -07:00
Ankita Kinger
72c47ee27c
fix: Removing a line of code to fix extra space issue on Page with Fixed height container (#41178)
## Description

Removing a line of code to fix extra space issue on Page with Fixed
height container once switched from a Page with Auto height container.
Also, manually tested out all issues from
[#19082](https://github.com/appsmithorg/appsmith/pull/19082) to confirm
nothing else breaks from the time these lines were added in the code.

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

## 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/17043252133>
> Commit: c8bde1226eed929dec92b1421a6167977486af97
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=17043252133&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 18 Aug 2025 17:04:42 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Bug Fixes**
* Improved main container auto-height calculation to eliminate
unintended extra spacing, resulting in more accurate, content-driven
sizing.

* **Chores**
* Added diagnostic logging around main container size computation in
view mode to aid troubleshooting (no functional impact).
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-20 11:39:59 +05:30
Vemparala Surya Vamsi
5d38e47508
chore: optimised isChildPropertyPath to not use a regex and added more logging around calculateSubTreeSortOrder (#41162)
## Description
Reduced the cumulative contribution of isChildPropertyPath by
approximately 98%. During page load, it originally took around 100 ms
for a customer app on a Mac machine and is now down to 2 ms. As a
result, calculateSubTreeSortOrder has improved by 70% on the same setup.
Optimised sorting and removed redundant lookups in addNodes, which led
to marginal gains. This optimisation specifically targets a customer
scenario where addNodes and addDependantsOfNestedPropertyPaths are
heavily stressed, contributing to an overall latency of about 7 seconds.
Added additional logging to investigate the issue further.


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/16714192460>
> Commit: d6633bb07190c897a9a9d9563e606c4dd220fa55
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16714192460&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 04 Aug 2025 05:57: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

* **New Features**
* Added a new function to improve detection of child property paths
supporting both dot and bracket notation.

* **Refactor**
* Optimized internal logic for managing dependency sets and improved
node addition efficiency.
  * Updated sorting method to accept arrays for better consistency.

* **Style**
* Enhanced code readability and maintainability with more concise
patterns.

* **Chores**
* Introduced performance timing and logging for key operations to aid in
monitoring and diagnostics.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-04 11:32:15 +05:30
Ashit Rath
d0b88994aa
fix: Skip JSObject eval where the path is the function (#41157)
## Description
JSObjects and JSModuleInstance function paths were earlier skipped eval
when present in the eval order. In the [reactive
actions](https://github.com/appsmithorg/appsmith/pull/40963) PR this
check was removed and due to that JSModuleInstances function were
overriden in `evalContextCache` with it's uneval value. Due to which
during any eval where the JSModuleInstance function is present as a
binding, fails to evaluate

This PR reverts the check

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

## 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/16665740260>
> Commit: 9a10adbc79bf5c2f2258b6dc4e013e4d66ac441d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16665740260&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 01 Aug 2025 05:00: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

* **Bug Fixes**
* Improved evaluation process to prevent unintended evaluation of action
properties within JSObjects, resulting in more stable and predictable
behavior for users.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-01 17:05:44 +05:30
Rudraprasad Das
4702fb12cb
chore: adding ce files (#41136)
## Description
Git Cy test cleanup
Doc
https://www.notion.so/appsmith/Cypress-Git-Tests-Full-Migration-Plan-Technical-Migration-Document-21cfe271b0e2808e9bbfc52ff3f271d1?source=copy_link

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

## 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/16609928353>
> Commit: c44fe06457377789cee38114e809e7ce842a3870
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16609928353&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Wed, 30 Jul 2025 00:46: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

* **Chores**
* Updated test intercepts and network request patterns to use new Git
API endpoint structures.
* Adjusted feature flag logic to enable a new Git API contracts flag for
relevant tests.
* Increased wait time for Git import operations to improve test
reliability.
* Refined and simplified test logic for Git discard, merge, and branch
operations.
  * Added a new locator for pull count in Git sync UI tests.
* Removed deprecated or redundant assertions and UI checks in
Git-related tests.
* Skipped import tests for older app versions due to backend
compatibility issues.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-31 13:38:56 +05:30
Apeksha Bhosale
e366a39dd2
fix: security fix 425 (#41152)
## Description

Issue -
https://github.com/appsmithorg/appsmith-ee/security/dependabot/425
EE PR - https://github.com/appsmithorg/appsmith-ee/pull/8044

Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16617495337>
> Commit: 9b72ee1c230ed00894c744a3513b7343b5ed0ac5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16617495337&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 30 Jul 2025 09:16: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

* **Chores**
* Updated internal package version resolutions to improve dependency
management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-30 17:35:04 +05:30
Apeksha Bhosale
6f3b09b404
fix: security fix (#41149)
## Description
issue -
https://github.com/appsmithorg/appsmith-ee/security/dependabot/426

EE PR - https://github.com/appsmithorg/appsmith-ee/pull/8036


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/16595524174>
> Commit: 5482439dd45c41e12712ee131b87657f09fa5380
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16595524174&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 29 Jul 2025 13:19:00 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **Chores**
* Updated package resolutions to include a specific version of
"form-data" for improved dependency management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-29 19:27:46 +05:30
Ankita Kinger
621b979524
fix: Updating the logo in the app editor to use favicon instead (#41147)
## Description

Updating the logo in the app editor to use favicon instead

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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]
> 🟣 🟣 🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/16591754385>
> Commit: 29ca67869963e9dbb9d684eeeb6713d865c6dd7f
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
> Spec: ``
> <hr>Tue, 29 Jul 2025 09:11: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

* **New Features**
* Updated the logo in the Appsmith link to display the organization's
favicon if available and different from the default, otherwise defaults
to the standard logo.
* **Bug Fixes**
* Increased the maximum allowed favicon size in branding settings from
32x32 to 48x48 pixels, with updated validation and messaging.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-29 09:56:31 +00:00
Ankita Kinger
38ae03bf17
fix: Updating logic for reactive actions to fix cyclic dependency issue with App templates and Generate page flow of a DB (#41144)
## Description

Updating logic for reactive actions to fix cyclic dependency issue with
App templates and Generate page flow of a DB. Currently, both flows were
leading to cyclic dependency errors which shouldn't show up.
App template used - Order Fulfilment Tracker
DB used - Mock DB Movies

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

EE PR for tests: https://github.com/appsmithorg/appsmith-ee/pull/8029

## 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/16590882275>
> Commit: 907935727e70fac4dc1a8efe70cd8a3cd5da262b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16590882275&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 29 Jul 2025 09:46:35 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

* **Refactor**
* Improved dependency detection logic for actions and JS actions,
refining how data paths are identified and handled.
* Unified data path detection by using a shared utility function across
the application.
* Enhanced filtering of entities during dependency calculations for
greater accuracy.

* **Bug Fixes**
* Corrected detection of reactive dependency misuse to reduce false
positives for certain entity types.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-29 15:22:20 +05:30
Ankita Kinger
9930224212
fix: Updating the check for matching app libraries path (#41139)
## Description

Updating the check for matching app libraries path to fix the
redirection to JS Libraries section when page has a custom path.

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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]
> 🟣 🟣 🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/16566848024>
> Commit: 55233a42b73de66a5def0e1287ca2513d632e60a
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
> Spec: ``
> <hr>Mon, 28 Jul 2025 10:40:58 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Bug Fixes**
* Improved path recognition for application libraries and packages,
supporting both standard and custom builder paths.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-28 11:27:34 +00:00
Rahul Barwal
2934bc6aa4
fix: update column position check in TableV2 freeze column test (#41130)
## Description
<ins>Problem</ins>

The freeze column test in TableV2 is failing due to incorrect column
position checks.

<ins>Root cause</ins>

The test logic for verifying column positions does not accurately
reflect the expected behavior after columns are frozen.

<ins>Solution</ins>

This PR handles updating the column position check logic in the TableV2
freeze column test to ensure it correctly validates the positions of
columns after freezing.

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.Table"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16494079609>
> Commit: b0496c58d9df265e06e8090667d865bc0957c39a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16494079609&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Table`
> Spec:
> <hr>Thu, 24 Jul 2025 10:56:26 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Tests**
* Updated test to verify the frozen column appears in the correct
position after table data changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-28 11:32:03 +05:30
Ankita Kinger
8ce52fe39e
fix: Updating the logo in App editor to use branding logo instead (#41135)
## Description

Updating the logo in App editor to use branding logo instead.

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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]  
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.

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


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2025-07-27 20:38:01 +00:00
Jacques Ikot
b4efa72684
feat: implement upgrade button within editor header (#41124)
## Summary
This PR adds an upgrade button to the IDE header, allowing users to
access upgrade options directly from the editor interface.

## Changes Made
- Added `ShowUpgradeMenuItem` import from `ee/utils/licenseHelpers`
- Integrated `<ShowUpgradeMenuItem />` component into the IDE header
right section
- Positioned the upgrade menu item before the help bar for better
visibility

## 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/16440833655>
> Commit: e5fcc5f11bfb9770481e72855b46f085ee0271e3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16440833655&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE`
> Spec:
> <hr>Tue, 22 Jul 2025 10:38:16 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Added an upgrade menu item to the IDE header for easier access to
upgrade options.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-22 16:48:13 -07:00
Jacques Ikot
e8ce322877
feat: remove release_paid_features_tagging feature flag (#41123)
## Summary

This PR removes the `release_paid_features_tagging` feature flag and
enables premium tagging for paid datasource features by default.

## Changes Made

### Files Modified
- `app/client/src/ce/entities/FeatureFlag.ts` - Removed feature flag
definition
- `app/client/src/pages/Editor/DataSidePane/DataSidePane.tsx` - Removed
feature flag usage

### Detailed Changes
1. **Removed feature flag definition**:
   - Removed `release_paid_features_tagging` from `FEATURE_FLAG` object
- Removed corresponding default value from `DEFAULT_FEATURE_FLAG_VALUE`

2. **Updated DataSidePane component**:
- Removed `useFeatureFlag(FEATURE_FLAG.release_paid_features_tagging)`
hook
- Removed conditional check `if (!isPaidFeaturesTaggingEnabled) return
false;`
- Updated `shouldShowPremiumTag` function to always evaluate premium tag
logic
   - Cleaned up dependency array in useMemo

## Impact

- Premium tags for paid datasource features will now be **always
visible** when applicable
- Removes the feature flag gating mechanism that was previously
controlling this behavior
- Simplifies the codebase by removing conditional logic around premium
tagging

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16435603085>
> Commit: 2db1a7337cb167f87f10de1a8e9a7513303427a5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16435603085&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.IDE, @tag.Datasource`
> Spec:
> <hr>Tue, 22 Jul 2025 06:41:49 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **Refactor**
* Removed the feature flag for paid features tagging and all related
logic from the application.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-22 16:47:58 -07:00
Vemparala Surya Vamsi
95c70aabb5
chore: optimised updateDependencyGraph code (#41117)
## Description
Added code optimisations around updateDependencyGraph by caching ast
parsing and made lower level code optimisations by using sets. Observed
a 40% reduction of updateDependencyGraph in a customer app. In addition
made optimisations to linkAffectedChildNodesToParent where we aren't
recomputing the result for the same node.
_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/16398467407>
> Commit: e5d8a165ac49fb205f5bb344979d09d1ebc2a225
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16398467407&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sun, 20 Jul 2025 12:41:19 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Improved dependency management with a new utility for comparing sets,
enhancing accuracy in tracking changes.
* **Chores**
* Optimized internal logic for handling dependencies to improve
performance and maintainability.
* Enhanced code parsing efficiency with caching to speed up repeated
analyses.
* Refined sorting logic to better handle duplicates and improve
processing speed.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-21 12:54:23 +05:30
Jacques Ikot
16ea831fac
feat: add premium feature tag for paid external SaaS plugins in DataSidePane (#41110)
## Summary

This PR introduces a new premium feature tag for datasources that use
paid external SaaS plugins in the DataSidePane. The tag is conditionally
displayed based on a new feature flag, allowing for controlled rollout
and visibility of premium integrations.

---

## Changes

- **Feature Flag:**  
- Added `release_paid_features_tagging` to the `FEATURE_FLAG` and
`DEFAULT_FEATURE_FLAG_VALUE` in `FeatureFlag.ts`.
- **DataSidePane UI:**  
  - Imported and used the new `PremiumFeatureTag` component.
- Added logic to determine if a datasource should display the premium
tag:
    - Checks if the new feature flag is enabled.
- Checks if the datasource's plugin is of type `EXTERNAL_SAAS` and if
the corresponding paid integration feature is disabled.
- Displays the premium tag in the datasource list for eligible
datasources.


## Automation

/ok-to-test tags="@tag.Sanity, @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/16281977131>
> Commit: f6450efb1a5123fd6d088251a3adeb6d75dbaa57
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16281977131&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Datasource`
> Spec:
> <hr>Tue, 15 Jul 2025 02:37: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

## Summary by CodeRabbit

* **New Features**
* Introduced a premium feature tag for certain datasources in the
DataSidePane, visible when specific feature flags are enabled.

* **Chores**
  * Added a new feature flag to support premium feature tagging.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-15 01:57:56 -07:00
Jacques Ikot
c4ed090fce
feat: update premium icon for create datasource page (#41109)
## Summary

This PR updates the premium icon displayed on the "Create Datasource"
page. The previous implementation used a custom-styled Tag component for
premium datasources. This change introduces a new reusable
`PremiumFeatureTag` component with a star icon, and updates the UI to
use this new component for premium datasources.

## Changes

- **Added**: `PremiumFeatureTag` component in
`components/editorComponents/`
  - Displays a star icon inside a non-closable tag.
- **Refactored**: `PremiumDatasources` to use the new
`PremiumFeatureTag` instead of the old custom-styled Tag.
- **Updated**: `DatasourceItem` and related styled components to improve
layout and alignment for the new premium tag.
- **Removed**: Old custom `PremiumTag` styles and usage.

## Automation

/ok-to-test tags="@tag.Sanity, @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/16262901647>
> Commit: da8a4ece7dcc8e06367e0a3859e4ea631561e4c0
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16262901647&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Datasource`
> Spec:
> <hr>Mon, 14 Jul 2025 10:10:19 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **New Features**
* Introduced a new visual tag to indicate premium features within the
interface.

* **Refactor**
* Improved the layout and structure of datasource items for better
visual organization.
* Replaced custom premium label styling with a standardized reusable
component for consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-14 12:16:39 -07:00
Vemparala Surya Vamsi
e5b2a26c65
chore: ce changes related to decoupling webworker (#41033)
## Description
We are improving the LCP by reducing the time to reach the first
evaluation, aiming for a 1.8 to 2.2 second reduction. To achieve this,
we’ve implemented the following changes:

Code Splitting of Widgets: During page load, only the widgets required
for an evaluation are loaded and registered. For every evaluation cycle
we keep discovering widget types and load them as required.

Web Worker Offloading: Macro tasks such as clearCache and JavaScript
library installation have been moved to the web worker setup. These are
now executed in a separate thread, allowing the firstUnevaluatedTree to
be computed in parallel with JS library installation.

Parallel JS Library Loading: All JavaScript libraries are now loaded in
parallel within the web worker, instead of sequentially, improving
efficiency.

Deferred Rendering of AppViewer: We now render the AppViewer and Header
component only after registering the remaining widgets. This ensures
that heavy rendering tasks—such as expensive selector computations and
loading additional chunks related to the AppViewer—can execute in
parallel with the first evaluation, further enhancing performance.

## 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/16202622510>
> Commit: b648036bd7b74ae742f5c5d7f6cfd770867a2828
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16202622510&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 10 Jul 2025 19:22:25 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**
* Widgets are now loaded and registered asynchronously, improving app
startup and modularity.
* Widget registration and configuration changes are now versioned,
ensuring selectors and UI update appropriately.
* Widget initialization and factory cache management are more robust,
with explicit cache clearing after widget registration.
* Added new Redux actions and selectors to manage first page load,
deferred JS library loading, and page rendering state.
* Theme handling and widget initialization in AppViewer are streamlined
for faster evaluation and rendering.
* Deferred loading of JavaScript libraries on first page load improves
performance.
* Conditional rendering gates added to AppViewer and Navigation
components based on evaluation state.

* **Bug Fixes**
* Prevented errors when conditionally rendering widgets and navigation
components before evaluation is complete.
* Improved widget property pane and configuration tests to ensure all
widgets are properly loaded and validated.

* **Refactor**
* Widget import and registration logic was refactored to support
dynamic, on-demand loading.
* Evaluation and initialization sagas were modularized for better
maintainability and performance.
* Widget factory and memoization logic were enhanced to allow explicit
cache clearing and version tracking.
* JavaScript library loading logic was parallelized for faster startup.
* Theme application extracted into a dedicated component for clarity and
reuse.

* **Tests**
* Expanded and updated widget and evaluation saga test suites to cover
asynchronous widget loading, cache management, and first evaluation
scenarios.
* Added tests verifying widget factory cache behavior and first
evaluation integration.

* **Chores**
* Updated internal dependencies and selectors to track widget
configuration version changes, ensuring UI consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-11 12:24:44 +05:30
Jacques Ikot
7282f64dcf
feat: skip license page for cloud billing users (#41102)
## Description

This PR enhances the signup success flow to automatically skip the
license page when cloud billing is enabled, providing a smoother
onboarding experience for cloud users.

## Key Changes

### 🚀 New Features
- Added cloud billing detection using `useIsCloudBillingEnabled()` hook
- Implemented automatic license page skipping for cloud billing users
- Enhanced redirect logic with proper async/await handling

### 🔧 Improvements
- Added redirect state management to prevent race conditions
- Improved error handling in redirect flow with try-catch blocks
- Extracted redirect conditions into `shouldAutoRedirect` variable for
better readability
- Added redirect protection to prevent multiple simultaneous redirects

### 🛠️ Technical Details
- Added `isMultiOrgEnabled` flag to signup redirect parameters
- Made `redirectUsingQueryParam` and `onGetStarted` functions async
- Implemented `isRedirecting` state to track redirect status
- Added proper dependency management in useEffect and useCallback hooks

## Impact

- **Cloud billing users** will now bypass the license page automatically
- **Improved UX** with more robust redirect handling and loading states
- **Better performance** by preventing unnecessary redirect attempts
- **Enhanced reliability** with proper error handling and state
management

## Automation

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

### 🔍 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/16167808138>
> Commit: ab4247c9e01d23159f07451f3014f76fa313134e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16167808138&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Authentication, @tag.LicenseAndBilling`
> Spec:
> <hr>Wed, 09 Jul 2025 12:00: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

* **New Features**
* Improved signup success experience with smarter automatic redirection
based on user status and organization settings.
  * Added a loading spinner during redirection for better user feedback.

* **Bug Fixes**
  * Prevented multiple redirects from occurring at the same time.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-10 13:42:42 -07:00
subratadeypappu
3981590006
chore: Add changes for new API contracts in GitSync.ts (#41101)
## Description
EE Counterpart: https://github.com/appsmithorg/appsmith-ee/pull/7963

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/16177814474>
> Commit: fddb1629889967638a5675cb6f005b08c113f770
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16177814474&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Wed, 09 Jul 2025 19:50:34 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

* **New Features**
* Added support for using updated API endpoints during Git connection
setup in tests via an optional parameter.

* **Tests**
* Enhanced test setup flexibility by allowing selection between original
and new API endpoints for Git-related operations.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-10 11:13:17 +06:00
Jacques Ikot
d34336e578
feat: add multi-org support to signup redirect helpers (#41099)
## Description
Added `isMultiOrgEnabled` property to the `RedirectUserAfterSignupProps`
interface to support multi-organization functionality in the signup
redirect flow.

## Changes
- Added optional `isMultiOrgEnabled?: boolean` property to
`RedirectUserAfterSignupProps` interface in
`app/client/src/ce/utils/signupHelpers.ts`

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16159330322>
> Commit: f3e264df4248cfdd3d4b8e766ecbdef0f11b4c78
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16159330322&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 09 Jul 2025 03:53:42 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2025-07-09 01:53:46 -07:00
Ankita Kinger
5bc92d0f74
fix: Adding an additional check to show correct cyclic dependency errors in the Reactive flow (#41090)
## Description

Adding an additional check to show correct cyclic dependency errors in
the Reactive flow

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

## 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/16123657082>
> Commit: 278e7c45f85de419ac53cfb07ec8fbffa4741316
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16123657082&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 07 Jul 2025 18:39:20 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Bug Fixes**
* Improved error detection for reactive dependency misuse, ensuring
errors are only raised when trigger and data paths originate from the
same entity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-08 10:52:40 +05:30
Goutham Pratapa
183d475308
fix: add missing check for organization data in form login command (#41091)
Added a check to ensure that the organization data retrieved during the
form login enablement process is valid. This prevents potential errors
when the organization with the specified slug is not found in the
database.

## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags=""

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]  
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.

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


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **Refactor**
* Improved code readability and simplified control flow in Redis URL
utility functions. No changes to functionality or user-facing behavior.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 22:10:07 +05:30
Vemparala Surya Vamsi
b2bab20c2d
chore: remove redundant klona used by the reactive action flow (#41089)
## Description
Removed redundant klona used by the reactive action flow.
>
> _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/16114695042>
> Commit: ac67b382f16ad4d8223caed946a8122d761e6739
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16114695042&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 07 Jul 2025 11:54:41 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **Refactor**
* Simplified evaluation logic by removing redundant parameters related
to previous evaluation tree snapshots across evaluation and trigger
handling processes.
* Streamlined method signatures and internal calls for improved
maintainability.

* **Tests**
* Updated test cases to align with refactored function signatures,
removing unnecessary arguments without affecting test coverage or
outcomes.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 17:30:55 +05:30
Goutham Pratapa
c7342fbc01
feat: add form login enablement command and enhance Redis URL handling (#41078)
Fixes: #41069

- Introduced a new command to enable form login via the CLI.
- Added utility functions to parse and retrieve Redis URL from
environment variables and configuration files, improving error handling
and robustness.

This update enhances the application's command-line interface and
improves the management of Redis configurations.

## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags=""

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!WARNING]
> Tests have not run on the HEAD
b3f0ca4351bbe51062b611d744f641eaf20ea64d yet
> <hr>Mon, 07 Jul 2025 11:35:33 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
  * Added a new CLI command to enable form login for an organization.
* **Improvements**
* Enhanced environment and Redis URL handling with validation and error
logging for improved reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

First:


![image](https://github.com/user-attachments/assets/6b4ad8b0-5aa0-4ff9-816a-fd6830a6c93b)



Second:

![image](https://github.com/user-attachments/assets/0f6b49ab-8630-4f8e-bb48-d01e01ca8f16)


Third:

![image](https://github.com/user-attachments/assets/9d46c00e-52ad-482e-9aba-a49870293a4d)


Fourth:

![image](https://github.com/user-attachments/assets/7b3097bb-a16f-4cf5-a223-4e25a41758bc)
2025-07-07 17:17:56 +05:30
Jacques Ikot
2af8ef31f4
feat: add unit tests for multiOrgDomains (#41076)
## Description
Add unit tests for multiOrgDomains

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/16044975912>
> Commit: 9f865d9f5267d1cf5d15fe7bad1d6fb3a9c2a635
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16044975912&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 03 Jul 2025 08:48:25 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

* **Tests**
* Added comprehensive unit tests for multi-organization domain
utilities, including domain validation, recent domain tracking,
retrieval, and clearing of stored domains.
* Ensured robust handling of edge cases, malformed data, and cookie
management behaviors.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 02:50:59 -07:00
Ashit Rath
e7a73e0f50
chore: UI module instance generation placeholder on page load and change (#41082)
## Description
This PR adds a placeholder saga to be called in page change or page load
operation of app to generate UI module instance. This is extended in EE

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

## 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/16070475917>
> Commit: 5fcbf3bf5d9be4ad503e5460a4743061acfd908c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16070475917&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 04 Jul 2025 11:03:51 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **New Features**
* Improved handling of UI module instances when switching pages in both
edit and view modes, ensuring a smoother user experience during page
transitions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 09:55:09 +05:30
Rahul Barwal
96981d870b
test: adds cypress spec to test onpage unload functionality (#41084)
## Description
Adds spec file and fixture file for on page unload functionality

Fixes #41000
_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.JS, @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/16070917983>
> Commit: 9435c88d922a2c1344cc5feb955ce3eb5f8620f5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16070917983&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS, @tag.Sanity`
> Spec:
> <hr>Fri, 04 Jul 2025 10:45: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

* **Tests**
* Added a comprehensive end-to-end test suite to verify on-page unload
behavior across different application modes and navigation methods.
* Included scenarios to ensure unload handlers trigger correctly and do
not fire redundantly.
  * Confirmed execution of multiple unload handlers in preview mode.

* **Chores**
* Introduced a new application fixture for testing on-page unload
actions with multiple pages, widgets, and JavaScript actions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-04 16:48:24 +05:30
Pawan Kumar
f9e1a5d4e4
chore: fix redirect url bug on datasource create on signup (#41083) 2025-07-04 10:14:57 +00:00
Rahul Barwal
ec9d6f756e
feat: enhance navigation state handling in PageEntity and saga (#41081)
## Description
<ins>Problem</ins>

Navigation state was not included when dispatching the
navigateToAnotherPage action, causing the invokedBy property to be unset
and leading to flakiness in the cypress spec:

`app/client/cypress/e2e/Regression/ClientSide/IDE/Canvas_Context_Selected_Widgets_spec.js`

<ins>Root cause</ins>

The PageEntity component did not pass navigation state, and the
NavigateActionSaga’s pushToHistory function did not effectively handle
navigation with state, leading to incomplete navigation data.

<ins>Solution</ins>

This PR handles updating the PageEntity component to include navigation
state when dispatching the navigateToAnotherPage action, ensuring the
invokedBy property is set to NavigationMethod.EntityExplorer. It also
refactors the pushToHistory function in the NavigateActionSaga to better
support navigation with state, preserving backward compatibility. The
NavigateToAnotherPagePayload type is updated to make state and query
optional for greater flexibility.

Fixes a regression introduced here:
https://github.com/appsmithorg/appsmith/pull/41074
_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/16065286850>
> Commit: 548dd7e404761c1f7bfcc71ad285843c83caf8b6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16065286850&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 04 Jul 2025 05:06:13 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Improved navigation behavior to include additional context about the
source of navigation within the app.

* **Bug Fixes**
* Enhanced compatibility for navigation actions, ensuring consistent
handling of various navigation payload types.

* **Documentation**
* Added detailed comments to clarify supported navigation patterns and
their handling.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-04 10:38:40 +05:30
Rahul Barwal
3421f8bfd1
feat: implements onPageUnload functionality for the edit app mode page selector (#41074)
## Description
<ins>Problem</ins>

onPageUnload functionality was not consistently triggered during all
types of page navigation in edit mode, leading to potential missed
cleanup or actions when navigating between pages via different UI
elements or programmatic flows.

<ins>Root cause</ins>

Navigation logic was fragmented across multiple components and methods
(button clicks, navigation tabs, page navigator), and direct history
manipulation bypassed centralized handling, preventing reliable
invocation of onPageUnload actions.

<ins>Solution</ins>

This PR handles the integration of onPageUnload functionality with all
page navigation flows in edit mode by centralizing navigation logic
through the navigateToAnotherPage action, enhancing type safety, and
ensuring onPageUnload actions are filtered and executed based on the
current page context.

Fixes #40998
_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.JS, @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/16042398132>
> Commit: 8ea04e6bb1312d9f468ed3d74ccc080ed6e9bac9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16042398132&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS, @tag.Sanity`
> Spec:
> <hr>Thu, 03 Jul 2025 06:44:33 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Enhanced page unload actions to only trigger for the current page,
improving accuracy and reliability.

* **Bug Fixes**
* Improved navigation consistency by updating the page switching
mechanism to use a unified action.

* **Tests**
* Added tests to ensure correct filtering of JavaScript actions executed
on page unload.

* **Refactor**
* Streamlined selector logic for better maintainability and performance.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-03 12:24:53 +05:30
Rahul Barwal
b4d5685d21
feat: integrates on page unload behavior with backend for deployed mode of the app (#41036)
## Description
**TLDR:** Adds support for executing page unload actions during
navigation in deployed mode, refactors related components, and improves
action handling.

<ins>Problem</ins>

Page unload actions were not triggered during navigation in deployed
mode, leading to incomplete workflows especially for cleanup.

<ins>Root cause</ins>

The application lacked integration for executing unload actions on page
transitions, and related components did not properly handle navigation
or action execution.

<ins>Solution</ins>

This PR handles the integration of page unload action execution during
navigation in deployed mode. It introduces selectors for unload actions,
refactors the MenuItem component for better navigation handling, and
improves the PluginActionSaga for executing plugin actions. Unused
parameters and functions are removed for clarity and maintainability.

Fixes #40997
_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/16021075820>
> Commit: f09e3c44d379488e43aec6ab27228d7675f79415
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=16021075820&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 02 Jul 2025 10:21:00 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **New Features**
* Added support for actions that execute automatically when navigating
away from a page.
* Introduced new navigation logic and hooks for consistent page
transitions within the app.
  * Added new menu and dropdown components for improved navigation UI.

* **Bug Fixes**
* Updated navigation item styling and active state detection for
improved accuracy.

* **Tests**
* Added comprehensive tests for navigation sagas and page unload
actions.
  * Added unit tests for navigation menu components.

* **Chores**
  * Refactored and centralized navigation logic for maintainability.
* Improved type safety and selector usage in navigation and action
execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-02 18:40:44 +05:30
Trisha Anand
481988daf1
chore: Disable anonymous user tracking when feature flag turned on (#40936)
## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/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/15996654359>
> Commit: ba524fe2f769b6f8d2c72e0332560dd5e0c0465e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15996654359&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 01 Jul 2025 11:08: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**
* Introduced a feature flag to control event tracking for anonymous
users.
* Added the ability to block analytics event tracking for anonymous
users when the feature flag is enabled.

* **Bug Fixes**
* Improved logic to ensure analytics events are not sent for anonymous
users if the feature flag is active.

* **Chores**
* Updated analytics initialization to respect the new tracking
preference for anonymous users.
* Enhanced tracking initialization flow to conditionally enable or
disable analytics based on user status and feature flag.
* Added tests to verify analytics initialization respects user tracking
preferences.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: jacquesikot <jacquesikot@gmail.com>
2025-07-02 00:20:51 -07:00
Jacques Ikot
f379f16bdd
feat: exclude app.appsmith.com from recent domains tracking (#41059)
## Summary
Adds filtering to exclude domains starting with "app." from the recent
domains tracking functionality.

## Changes
- Updated `isValidAppsmithDomain()` function to exclude domains that
start with "app."
- This prevents domains like `app.appsmith.com` from being tracked and
stored in recent domains

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/15966291652>
> Commit: b7f9bfa93b84592c5d2526410270799f5c44a9cd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15966291652&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 30 Jun 2025 07:53:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **Bug Fixes**
* Improved domain validation to exclude domains starting with "app."
from being recognized as valid Appsmith domains.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-30 01:15:02 -07:00
Ankita Kinger
c17dc3aabc
fix: Updating the util to fix client build failure on EE (#41058)
## Description

Updating the util to fix client build failure on EE

Fixes #

## 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/15942976322>
> Commit: 84b5b89eeb560056d4d7d74a49281a19aa61073b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15942976322&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 28 Jun 2025 15:23:49 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Refactor**
* Improved internal logic for identifying action entity types and
dependency paths, enhancing the accuracy of dependency misuse detection.

No visible changes to the user interface or workflows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-30 10:13:56 +05:30
dependabot[bot]
40efc3bd84
chore(deps): bump pbkdf2 from 3.1.2 to 3.1.3 in /app/client (#41026)
Bumps [pbkdf2](https://github.com/crypto-browserify/pbkdf2) from 3.1.2
to 3.1.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/browserify/pbkdf2/blob/master/CHANGELOG.md">pbkdf2's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/browserify/pbkdf2/compare/v3.1.2...v3.1.3">v3.1.3</a>
- 2025-06-20</h2>
<h3>Commits</h3>
<ul>
<li>Only apps should have lockfiles <a
href="8b067308ee"><code>8b06730</code></a></li>
<li>[lint] fix whitespace <a
href="9a76e2f37e"><code>9a76e2f</code></a></li>
<li>[lint] fix parens/curlies/semis/etc <a
href="6fd84bf64a"><code>6fd84bf</code></a></li>
<li>[meta] add <code>auto-changelog</code> <a
href="796c38d428"><code>796c38d</code></a></li>
<li>[Tests] fix tests in node 17 <a
href="3661fb0156"><code>3661fb0</code></a></li>
<li>Revert &quot;[Tests] fix tests in node &lt; 3&quot; <a
href="7431b57668"><code>7431b57</code></a></li>
<li>[Tests] fix tests in node &lt; 3 <a
href="eb9f97a66e"><code>eb9f97a</code></a></li>
<li>[Fix] ensure unknown algorithms throw + known ones match node <a
href="26d4fd391e"><code>26d4fd3</code></a></li>
<li>[Tests] add GHA, always run nyc <a
href="513906a735"><code>513906a</code></a></li>
<li>[lint] fix a few more rules <a
href="ab04da834a"><code>ab04da8</code></a></li>
<li>[lint] switch to eslint <a
href="89694cf7e4"><code>89694cf</code></a></li>
<li>[Tests] add coverage <a
href="d0d534bfdc"><code>d0d534b</code></a></li>
<li>[Refactor] use <code>to-buffer</code> <a
href="e3102a8cd4"><code>e3102a8</code></a></li>
<li>[readme] improve badges <a
href="fca0c9d4c5"><code>fca0c9d</code></a></li>
<li>[Tests] remove unused travis file <a
href="a2c7d93bbc"><code>a2c7d93</code></a></li>
<li>[meta] switch from <code>files</code> to <code>npmignore</code> <a
href="7f31fbca52"><code>7f31fbc</code></a></li>
<li>[Tests] use .nycrc <a
href="8d628e8d55"><code>8d628e8</code></a></li>
<li>[Refactor] minor tweaks <a
href="fc61005c8c"><code>fc61005</code></a></li>
<li>[Deps] update <code>create-hmac</code>, <code>safe-buffer</code>,
<code>sha.js</code> <a
href="ae2a7d051c"><code>ae2a7d0</code></a></li>
<li>[Fix] pin <code>create-hash</code>, <code>ripemd160</code> due to
breaking changes <a
href="e07996890a"><code>e079968</code></a></li>
<li>[Tests] fix tests in node 3 <a
href="45fbcf3043"><code>45fbcf3</code></a></li>
<li>[meta] skip publishing benchmarks <a
href="19ea57bf11"><code>19ea57b</code></a></li>
<li>[Dev Deps] add missing peer dep <a
href="645e252375"><code>645e252</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3e40827b18"><code>3e40827</code></a>
v3.1.3</li>
<li><a
href="e3102a8cd4"><code>e3102a8</code></a>
[Refactor] use <code>to-buffer</code></li>
<li><a
href="7431b57668"><code>7431b57</code></a>
Revert &quot;[Tests] fix tests in node &lt; 3&quot;</li>
<li><a
href="19ea57bf11"><code>19ea57b</code></a>
[meta] skip publishing benchmarks</li>
<li><a
href="a2c7d93bbc"><code>a2c7d93</code></a>
[Tests] remove unused travis file</li>
<li><a
href="645e252375"><code>645e252</code></a>
[Dev Deps] add missing peer dep</li>
<li><a
href="796c38d428"><code>796c38d</code></a>
[meta] add <code>auto-changelog</code></li>
<li><a
href="d0d534bfdc"><code>d0d534b</code></a>
[Tests] add coverage</li>
<li><a
href="7f31fbca52"><code>7f31fbc</code></a>
[meta] switch from <code>files</code> to <code>npmignore</code></li>
<li><a
href="fca0c9d4c5"><code>fca0c9d</code></a>
[readme] improve badges</li>
<li>Additional commits viewable in <a
href="https://github.com/crypto-browserify/pbkdf2/compare/v3.1.2...v3.1.3">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~ljharb">ljharb</a>, a new releaser for
pbkdf2 since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pbkdf2&package-manager=npm_and_yarn&previous-version=3.1.2&new-version=3.1.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/appsmithorg/appsmith/network/alerts).

</details>

/test all

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/15907766013>
> Commit: 077b028e6edf8126b9b16b18af000791bd3b4c47
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15907766013&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 27 Jun 2025 05:31:13 UTC
<!-- end of auto-generated comment: Cypress test results  -->

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 09:49:18 +05:30
Ankita Kinger
791476290f
fix: Updating the function definition for checking reactive cyclic dependencies (#41049)
## Description

Updating the function definition for checking reactive cyclic
dependencies to throw an error in all such scenarios and block multiple
execute API calls.

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

## 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/15919295485>
> Commit: 05c9f6481e464dc802b2b556a0eba48c66cc3030
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15919295485&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 27 Jun 2025 07:06:10 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

* **Refactor**
* Improved the logic for detecting reactive dependency misuse, resulting
in clearer and more efficient checks.
* Updated type handling to support partial entities in action detection.

* **New Features**
* Enhanced detection of conflicting trigger and data paths within
dependencies, providing immediate feedback when misuse is found.
* Introduced a feature flag to control reactive dependency misuse
detection.

* **Tests**
* Added comprehensive tests to validate detection of reactive dependency
misuse in various direct and transitive dependency scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-27 16:46:44 +05:30
Ankita Kinger
bb96d0f616
chore: Updating the description for run behaviour options of a JS object function (#41053)
## Description

Updating the description for run behaviour options of a JS object
function

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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/15904358858>
> Commit: 643f72c44ba967a46e6d3d65c0e992816797c62d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15904358858&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
> Spec:
> <hr>Thu, 26 Jun 2025 15:09:38 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

* **New Features**
* Updated run behavior options for JS functions with clearer, more
specific descriptions on how and when they execute.

* **Style**
* Improved clarity of descriptions for JS function run behaviors to
enhance user understanding.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-27 11:08:41 +05:30
Vemparala Surya Vamsi
5232b3f89e
chore: cache theme value properties, since it is a frequent property (#41031)
## Description
Added caching of theme property value since it is a frequent expression,
it constitutes 20% of all binding expressions for a large customer app.
Expecting a 400ms reduction in LCP for a large customer app.

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/15880337835>
> Commit: 11fab20fe285aa1b3b59c164179902628d35d97d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15880337835&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 25 Jun 2025 17:45: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

## Summary by CodeRabbit

- **New Features**
- Improved performance when evaluating theme-related properties by
introducing caching for repeated values.

- **Chores**
- Added a utility to identify specific theme-related unevaluated values.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-26 11:03:13 +05:30
Jacques Ikot
2e6ede2419
refactor: extract RecentDomainsSection into reusable component (#41020)
### Description

Refactored the recent domains section from being an inline constant in
`SignUp.tsx` into a dedicated, reusable React component. This improves
code organization, maintainability, and testability.

### Changes Made

- **Created new component**: `RecentDomainsSection.tsx`
  - Encapsulates all logic for rendering recent organization domains
- Handles conditional rendering internally (returns null when no
domains)
  - Includes proper TypeScript types and imports

- **Updated SignUp component**:
  - Removed inline `recentDomainsSection` constant definition
  - Added import for new `RecentDomainsSection` component
  - Replaced usage with JSX component

- **Improved avatar logic**:
- Changed from alphabetical cycling (`String.fromCharCode(65 + (index %
26))`) to using the actual organization name's first letter
(`orgName.charAt(0).toUpperCase()`)
  - This provides more meaningful and recognizable avatars for users

## Automation

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

### 🔍 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/15838492574>
> Commit: f4c799f7fd76851b404ddddd441728d9bd6445ca
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15838492574&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity, @tag.Authentication`
> Spec:
> <hr>Tue, 24 Jun 2025 01:35:51 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 dedicated section to display recently accessed domains
during user sign-up, allowing quick access to previously used domains.

- **Refactor**
- Modularized the recent domains display by moving its logic and UI into
a separate component for improved maintainability and clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-24 10:04:57 -07:00
Ankita Kinger
6fa8196325
fix: Updating the logic for page load action checks to fix reactivity for new bindings (#41028)
## Description

Updating the logic for page load action checks to fix reactivity for new
bindings

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

## 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/15846753581>
> Commit: 04caf3892aad8a731267e93c21224f7f9c7c147d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15846753581&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 24 Jun 2025 10:39:57 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **Refactor**
- Simplified the management of on-load action execution status from
tracking multiple actions to a single boolean flag, streamlining related
logic and state handling.
- **Bug Fixes**
- Improved reliability by updating the execution status only after all
on-load actions have completed, reducing potential inconsistencies.
- **Performance**
- Enhanced performance by removing unnecessary mapping and array
operations in selectors and sagas.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-24 16:51:02 +05:30
Ankita Kinger
f47332a129
fix: Removing a part of code as its not updating the API params dependency correctly in Evaluations (#41019)
## Description

Removing a part of code as its not updating the API params dependency
correctly in Evaluations

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

## 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/15827212934>
> Commit: 0c78c53a95dbdf37c0e157e0cb15fdce9aa6674c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15827212934&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 23 Jun 2025 16:31:24 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

- **Refactor**
- Updated the behavior of the API configuration form to streamline how
path and query parameters are handled during autofill. The form now
updates the visible path field without triggering additional background
updates.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-24 13:54:49 +05:30
Rahul Barwal
7c00b6a229
test: fix Regression/ClientSide/ActionExecution/FrameworkFunctions_NavigateToFunctions_spec.ts (#41015)
## Description
<ins>Problem</ins>

After creating a widget, the page URL was updated. If the widget was
subsequently removed, navigating back from an external site (e.g.,
google.com) caused the app to fail in locating the widget, resulting in
out page selector being unable to open.

<ins>Root cause</ins>

1. Redundant URL assignment persisted after widget deletion, leading to
navigation errors and an inconsistent application state.
2. Additionally, on the fourth spec when we were adding a new action on
the button click, it already had a on click action defined which was
pointing to navigate to google. com and the new navigator we were adding
was getting up and down on top of that. So basically sometimes it was
preferring first navigation and sometimes it was preferring second
navigation.

<ins>Solution</ins>

1. This PR handles the removal of unnecessary URL assignment in the
navigation test, simplifying the test case and improving code clarity
and maintainability.
2. In this PR, we remove the first navigation by applying the onClick
property in a JS 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.JS"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/15840445845>
> Commit: a42d60a18efca0b824fbd11127ce2b7f23c043cb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=15840445845&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS`
> Spec:
> <hr>Tue, 24 Jun 2025 04:12:33 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

- **Tests**
- Updated a navigation test case to remove an unnecessary URL assignment
step.
- Modified navigation verification to use a direct JavaScript expression
for improved accuracy.
- Cleaned up formatting by removing a trailing blank line between test
cases.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-24 10:57:35 +05:30