fd0b2f55c6
7463 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
c041360b6c
|
chore: Add tests for copy paste for anvil widgets. (#34895)
Fixes #33982 /ok-to-test tags="@tag.Anvil" <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9952206667> > Commit: d70ec63edc6cbc9a760c0c1471f9f4249557ee2f > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9952206667&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` > Spec: > <hr>Tue, 16 Jul 2024 07:23:09 UTC <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced tests for paste functionality in the Anvil editor, covering various scenarios to ensure correct behavior when pasting widgets. - **Improvement** - Enhanced the paste function in Anvil editor to skip processing when no copied widgets are present. - **Tests** - Added comprehensive test cases to verify the paste functionality, including drag-and-drop, keyboard shortcuts, and validation of widget placement and attributes. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
48c782a07f
|
chore: Anvil only: Automatically delete redundant zones (#34879)
## Description Delete redundant zones when drag last widget out or remove it. https://www.notion.so/appsmith/Removing-redundant-zones-8a2cf907c97246adb618664940e298b0 Fixes #34854 https://github.com/user-attachments/assets/686dbee3-d16c-4ea1-bbd1-b9e48c73ea8f https://github.com/user-attachments/assets/c2fe52b8-6a3e-4dcb-993a-03cb65e9672c ## Automation /ok-to-test tags="@tag.Anvil" ### 🔍 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/9953698717> > Commit: d2a5392469bece7938a2ca673a9908960a6d2f98 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9953698717&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` > Spec: > <hr>Tue, 16 Jul 2024 09:12:41 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Improved widget management by adding new functions to handle deletion of redundant zones and manage widget children. - **Bug Fixes** - Enhanced widget dragging and deletion logic to ensure redundant zones are properly handled. - **Tests** - Added tests for new utility functions to validate their behavior in different scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Ilia Znamenskii <ilia@appsmith.com> |
||
|
|
d858eee763
|
chore: Reduce DSL size by removing runtime values from the DSL. (#34894)
## Description
Today, the DSL contains many properties that are not necessary to be
persisted, as these are properties which are inherent to the widget type
and are statically available in the codebase and during runtime.
`getChildWidgetProps` is the lowest level function the widget addition
flow that is not used in recursion and does not need to return these
runtime properties for proper functioning of the widget addition flow.
The flow is as follows:
`addChildSaga` -> `getUpdateDSLAfterCreatingChild` ->
`generateChildWidgets` -> `getChildWidgetProps` -> `generateWidgetProps`
(Don't understand the distinction in the names of the functions? Me
neither)
In this PR, we're selectively deleting the properties which are going to
be set into the DSL and are not required by the DSL. This is done in the
`getChildWidgetProps` function.
DSL Before:
```{
"isVisible": true,
"type": "BUTTON_WIDGET",
"animateLoading": true,
"text": "Submit",
"buttonVariant": "PRIMARY",
"placement": "CENTER",
"widgetName": "Button1",
"isDisabled": false,
"isDefaultClickDisabled": true,
"disabledWhenInvalid": false,
"resetFormOnClick": false,
"recaptchaType": "V3",
"version": 1,
"responsiveBehavior": "hug",
"minWidth": 120,
"searchTags": ["click", "submit"],
"tags": ["Buttons"],
"hideCard": false,
"isDeprecated": false,
"displayName": "Button",
"key": "yngxey92vx",
"iconSVG": "https://release-appcdn.appsmith.com/static/media/icon.7a418b9e1899a550d7e8f33b48cbde12.svg",
"thumbnailSVG": "https://release-appcdn.appsmith.com/static/media/thumbnail.a348658e996feaad96cadc30d99374ff.svg",
"needsErrorInfo": false,
"onCanvasUI": {
"selectionBGCSSVar": "--on-canvas-ui-widget-selection",
"focusBGCSSVar": "--on-canvas-ui-widget-focus",
"selectionColorCSSVar": "--on-canvas-ui-widget-focus",
"focusColorCSSVar": "--on-canvas-ui-widget-selection",
"disableParentSelection": false
},
"widgetId": "3du74sjd24",
"renderMode": "CANVAS",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}",
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"isLoading": false,
"parentColumnSpace": 16.21875,
"parentRowSpace": 10,
"leftColumn": 16,
"rightColumn": 32,
"topRow": 27,
"bottomRow": 31,
"mobileLeftColumn": 16,
"mobileRightColumn": 32,
"mobileTopRow": 27,
"mobileBottomRow": 31,
"parentId": "0",
"dynamicBindingPathList": [
{ "key": "buttonColor" },
{ "key": "borderRadius" }
]
}
```
DSL After:
```
{
"isVisible": true,
"type": "BUTTON_WIDGET",
"animateLoading": true,
"text": "Submit",
"buttonVariant": "PRIMARY",
"placement": "CENTER",
"widgetName": "Button1",
"isDisabled": false,
"isDefaultClickDisabled": true,
"disabledWhenInvalid": false,
"resetFormOnClick": false,
"recaptchaType": "V3",
"version": 1,
"responsiveBehavior": "hug",
"minWidth": 120,
"key": "gtjsfondgr",
"needsErrorInfo": false,
"widgetId": "cszodka6p1",
"renderMode": "CANVAS",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}",
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"isLoading": false,
"parentColumnSpace": 16.21875,
"parentRowSpace": 10,
"leftColumn": 18,
"rightColumn": 34,
"topRow": 28,
"bottomRow": 32,
"mobileLeftColumn": 18,
"mobileRightColumn": 34,
"mobileTopRow": 28,
"mobileBottomRow": 32,
"parentId": "0",
"dynamicBindingPathList": [
{ "key": "buttonColor" },
{ "key": "borderRadius" }
]
}
```
Fixes #21825
## 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/9904027497>
> Commit: b6eac580e47dcdd0b056acdb574aac7b8c7cba2f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9904027497&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Fri, 12 Jul 2024 08:10:58 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
- **Refactor**
- Improved the drag state generation logic for fixed layouts to enhance
performance and maintainability.
- Simplified the `widget` object in the `WidgetAdditionSagas` to remove
unnecessary properties, improving clarity and efficiency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
81d738d1de
|
chore: Buffer first eval action to fix race condition with setup worker (#34891)
## Description Check the issue description for the actual problem. Solution: To mitigate the race condition; instead of using `take` post setup worker an `actionChannel` is used to create a queue to detect any first eval action dispatched while the code path completes the worker setup. This queue is then picked by and the action is processed and the `actionChannel` is closed. The baseline theory of the solution is to create a queue of any first eval action dispatch throughout the lifecycle of the setup process but act only when the setup is complete The problem is not that evident in applications but in packages it's highly reproducible as there are less api fetches to start eval Fixes https://github.com/appsmithorg/appsmith/issues/34890 ## 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/9903341349> > Commit: 999f677e9af9c1d90201fcf124d1246ecfd79ef2 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9903341349&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Fri, 12 Jul 2024 07:07:30 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 and performance of evaluation change listener by optimizing action handling. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
70f8777afd
|
chore: Compute default value for jsaction params (#34708)
## Description
This PR adds the values to jsArguments. The logic for this is
- If the value is string then it is kept as is
- For non-strings they are wrapped with `{{ }}` do maintain the data
type integrity when evaluated.
This property is currently not used anywhere in the platform and this is
intended to be used by js modules to identify the default values of
parameters and provide support to alter then in a UI in the app.
This PR also splits `workers/Evaluation/getJSActionForEvalContext.ts` to
override in the EE for modules
PR for https://github.com/appsmithorg/appsmith-ee/pull/4612
## 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/9919551354>
> Commit: c6ab372477fb3fd2f1ce171729af4fa64ac2a487
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9919551354&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 13 Jul 2024 12:16:08 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 additional node types (`RestElement`,
`ObjectPattern`, `ArrayPattern`) in our AST processing.
- Introduced `addPropertiesToJSObjectCode` function to enhance
JavaScript object property management.
- **Updates**
- Enhanced `myFun2` function with new parameters and default values to
improve flexibility and usage.
- Improved `parseJSObject` function with additional parameters for
better functionality.
- **Tests**
- Added a new test suite for `addPropertiesToJSObjectCode` function to
ensure robust property management in JavaScript objects.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
3767a62763
|
fix: modal rename update references (#34855) | ||
|
|
4c40aab464
|
chore: trigger linting actions in any non published mode (#34903)
## Description The CE's selector implementation has been changed to lint actions for all non published app modes. 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/9906233665> > Commit: 6b50ea5ef919b3b79e53642f63c7a9e981d8b307 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9906233665&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Fri, 12 Jul 2024 11:06: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** - Adjusted linting trigger conditions to ensure linting is activated for all modes except the published mode. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
083cea19d3
|
feat: Remove editable checkbox from PrimaryColumnsControlV2 and update imports (#34586)
## Description One of the findings in usability tests is that editable fields in table tend to confuse our users. With this PR, we attempt to remove editable option in table cols. <ins>Summary of code changes</ins> This PR consists of code changes to `PrimaryColumnsControlV2.tsx` to hide the editable checkboxes in the table. All cypress changes just make sure that the we use the colSettings view to make the column editable(earlier we used checkbox there. * Removed unnecessary cypress command as well. Fixes #33888 _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.Widget, @tag.Table, @tag.Binding" ### 🔍 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/9904610336> > Commit: 890d9355b375e66e5e56a52464d8c0f19c759b9f > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9904610336&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget, @tag.Table, @tag.Binding` > Spec: > <hr>Fri, 12 Jul 2024 09:16:41 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 - **Refactor** - Improved inline editing functionality test by updating the method used to toggle column editability for better accuracy and maintainability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
6f856b5ab5
|
chore: Add newrelic tracking spans to AppViewer engine and AppEditor engine (#34716)
## Description Add new relic tracking spans to all fn calls in Appviewer and AppEditor engine. 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/9868467158> > Commit: 9267930a1501b1a6eaab985c714c04a4f2a5da52 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9868467158&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Wed, 10 Jul 2024 05:32:52 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced app performance tracking with added telemetry spans for key functions. - **Tests** - Updated test cases to include telemetry span tracking, ensuring better performance monitoring and validation. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
34f6e32d6d
|
revert: change value to label in onItemSelect inside SelectCell of table widget (#34872)
Reverts appsmithorg/appsmith#34743 ## 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/9888593641> > Commit: eec317589c3e8ec7fa68a85811f0fb4e7e632582 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9888593641&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Table` > Spec: > <hr>Thu, 11 Jul 2024 09:38:04 UTC <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved test cases for select options in the table widget for better clarity and organization. - Updated `SelectCell` component to use option values instead of labels for item selection. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
fd486f3828
|
fix: Added tests for EditorTab component (#34834)
## Description This PR added unit test for EditorTab component. Fixes #34870 ## 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/9875712653> > Commit: e27e1404bc19291e8bc1730fa84819e0174cec66 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9875712653&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity, @tag.IDE` > Spec: > <hr>Wed, 10 Jul 2024 14:34:11 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** - Modified the `EditorTabs` to display a list view when all tabs are closed and a specific condition involving `currentEntity.id` is met. - Improved the logic for handling hamburger click events based on the same condition. - **Tests** - Added test cases for rendering different views and components in the `EditorTabs` component, covering various editor modes such as split screen and full screen. - **Chores** - Added `data-testid` attribute to the `ListContainer` component for better testability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b8f161c0e7
|
feat: IDE tab list search view (#34759)
## Description This PR adds search functionality to the overflow list of tabs. Fixes #34293 ## 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/9873481673> > Commit: c09ae9f03be38d8b781846aee61f05c7d61fb03c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9873481673&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Wed, 10 Jul 2024 12:35:26 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Implemented fuzzy search functionality within the editor pane. - Added a search bar to the editor pane for improved query and file searching. - **Improvements** - Enhanced empty state handling to display more informative messages when search results are empty. - Updated button elements to use consistent test IDs (`"t--add-item"`) for improved testability. - **Bug Fixes** - Refactored rendering logic in various components to ensure accurate results based on search input. - **Tests** - Added comprehensive tests for the new fuzzy search functionality and updated test assertions to align with new button test IDs. - **Chores** - Updated `design-system` dependency to version `2.1.43`. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
00a7d3c9a8
|
chore: Move Sidebar to IDE/Components (#34487)
## Description Separate the Sidebar Component from the various IDEs and move it to the IDE module. Fixes #34554 ## Automation /ok-to-test tags="@tag.IDE" ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9869212078> > Commit: 0b685d46ba18bb98e37fde87a96c930172fc5c15 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869212078&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.IDE` > Spec: > <hr>Wed, 10 Jul 2024 06:47:16 UTC <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new sidebar component (`IDESidebar`) managing button states and handling interactions. - Added `Condition` enum for better condition management with icons and colors in the sidebar buttons. - **Enhancements** - Improved click handling for sidebar buttons with a new `handleOnClick` function. - **Tests** - Added test cases for `SidebarButton` component to validate different conditions and click behaviors. - **Components** - New React components and interfaces for managing the IDE's sidebar functionality and state. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
cdd33a846f
|
feat: cURL import now happens via a modal (#34830)
## Description Adds the cURL import flow to go through a modal instead of editor level screen. This is done to ensure the IA is correct as per IDE 2.0 standards Fixes #32942 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9869174972> > Commit: 6143c1c79c0bb7c6a4899fc477985d0ed23699df > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869174972&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > Spec: > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js > <li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. > <hr>Wed, 10 Jul 2024 07:56:03 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 test case function calls and refactored imports to improve code structure and maintainability in multiple files related to CURL import flows. - Consolidated and rearranged steps in CURL import flow test cases for better readability and organization. - **New Features** - Introduced `AppCURLImportModal` component to handle CURL command imports within the API editor. - Added constants `SET_CURL_MODAL_OPEN` and `SET_CURL_MODAL_CLOSE` for managing the state of the CURL modal. - **Style** - Updated selector formats and added proper commas in the `ApiEditor.js` file. - **Chores** - Removed unused constants and functions related to CURL import page paths across multiple files for cleaner codebase. - Streamlined the management of the CURL import modal state in the reducer and added relevant selectors. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
8a4f1b0a5d
|
feat: Add WDS Table Widget to list of suggested widgets (#34816)
## Description - The Bind Data menu in the query pane did not list the WDS Table Widget when looking for existing widgets to which to bind the query. - This PR fixes this by adding `WDS_TABLE_WIDGET` to the following - `SUPPORTED_SUGGESTED_WIDGETS` - Because the code checks if the key (widget type) exists in this list before listing them - `WIDGET_DATA_FIELD_MAP` - Because the code gets the info necessary to bind data to the widgets using this list This PR does not effect the functionality of Fixed mode, and only effects Anvil apps. Fixes #34164 ## Automation /ok-to-test tags="@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/9854175427> > Commit: 17bb948c02ce6e1e63e68641abd2ca4576c978cc > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9854175427&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.IDE` > Spec: > <hr>Tue, 09 Jul 2024 09:33:31 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 the `WDS_TABLE_WIDGET` in the data binding feature, enabling enhanced widget configurations and transformations. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d64ddee67a
|
chore: Don't duplicate the URL parsing Regexes (#34788)
This code duplication meant that we missed updating the regexes to the ones that support UUIDs, and so the caching functionality broke. This PR removes the duplication and imports the regex constants from a single place. /test sanity <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9850040595> > Commit: d8261a1b5ed55c7258260695fea2f2ca32dc0484 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9850040595&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Tue, 09 Jul 2024 03:00:41 UTC <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved maintainability by importing path constants from a centralized location. - Replaced hardcoded `pageId` and `applicationId` with variables for better code clarity and flexibility. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
08c3ea9b94
|
chore: cypress snapshot types (#34722)
## Description 1. Add scripts for local e2e testing in the docker container. 2. Add types for cypress-image-snapshot In this PR, I also added the following PRS as they affect screenshot tests as well. I did this to speed up the process and unblock the team. #34528 #34546 #34676 #34729 #34638 #34639 #34511 To run E2E tests locally in docker, you need to do the following: 1. Run FE locally and prepare the tests for local launch. See the instructions [here](https://github.com/appsmithorg/appsmith/blob/release/contributions/ClientSetup.md). 2. Run `yarn cypress:snapshot:docker:build` — this will create a docker container with the necessary environment. 3. Run `yarn cypress:snapshot:docker "./cypress/e2e/Regression/ClientSide/Anvil/Widgets/*_spec.ts" updateSnapshots=false`. Here we can use the path to a specific file, or set `updateSnapshots=true` flag to update the screenshots. ## Automation /ok-to-test tags="@tag.Anvil" ### 🔍 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/9844579277> > Commit: 75f26599b149f831051fbd631aaa059084b226dd > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9844579277&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` > Spec: > <hr>Mon, 08 Jul 2024 18:37:36 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for image snapshot testing with the `@types/cypress-image-snapshot` dependency. - **Refactor** - Updated test specifications by removing unnecessary `triggerInputInvalidState()` calls. - Reorganized and improved efficiency of image snapshot methods for various devices. - **Chores** - Updated `Dockerfile` to configure the Cypress environment with specific versions for dependencies. - Changed import paths in `e2e.js` for better module resolution. - **Style** - Fixed a comment typo in Cypress plugin configuration. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> Co-authored-by: unknown <vadim@appsmith.com> |
||
|
|
b7853a99b2
|
feat: change value to label in onItemSelect inside SelectCell of table widget (#34743)
## Description **Issue** In the table widget, the select column currently displays the value from the dropdown when a user makes a selection, rather than the label. This behaviour is inconsistent with the standalone select widget, which correctly renders the label upon selection. **Fix** This PR addresses the inconsistency by modifying the table widget's select column to display the label of the selected item, ensuring alignment with the behaviour of the standalone select widget. Fixes #26188 ## Automation /ok-to-test tags="@tag.Table, @tag.Binding, @tag.Widget, @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/9843945454> > Commit: 330d0d3f82ea7a8769c350f7caa0714959838f12 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9843945454&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Table, @tag.Binding, @tag.Widget, @tag.Sanity` > Spec: > <hr>Mon, 08 Jul 2024 18:21: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 - **Bug Fixes** - Updated the `SelectCell` component to use the `option.label` instead of `option.value` for item selection. - **Tests** - Revised test descriptions and assertions for select options in Table Widget to reflect the new functionality of using labels as values in select cells. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
ed42302323
|
chore: Fix regexes for APIs needing environment (#34800)
The regex used to identify if an API needs environment information, doesn't support UUIDs. This PR adds that. Ideally, we should pass this information from where we're calling `Api.get()`, not via an interceptor that matches certain very specific API paths. Especially since the regex isn't matching generic paths. Add to that, headers is the wrong place for things like this, because this is essentially a "query param", it's a parameter to the query in the GET API call, on equal footing with `datasourceId`. The generic Axios interceptors being aware of the concept called environments, itself is an abstraction leak, in my opinion. Problem for another day though. /test sanity <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9850313501> > Commit: e6348e0685c1cc79d8932b5fcaa35d67e635186b > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9850313501&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Tue, 09 Jul 2024 03:33:12 UTC <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Improvements** - Enhanced dynamic route matching for data source structures and triggers, making the application more flexible and robust. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
9766775d05
|
fix: hide generate page button in DSFormHeader (#34780)
## Description In PR #34655, the "Generate Page" button was removed from the datasource preview page (Footer). However, the `DSFormHeader` for other datasource types still included this button, leading to inconsistencies across the application. This PR addresses the issue by removing the "Generate Page" button from the DSFormHeader for all datasource types, ensuring uniformity in the datasource preview pages and aligning with the changes made in PR #34655. Fixes #34771 ## Automation /ok-to-test tags="@tag.Datasource" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9836680996> > Commit: bde150dd6010e110f32288a52e39657f96945704 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9836680996&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource` > <hr>Mon, 08 Jul 2024 09:44:32 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 the visibility of the "generate page" button in the DataSource Editor. - **Tests** - Added a new test case to ensure the "generate page" button is hidden when the `release_drag_drop_building_blocks_enabled` feature is enabled. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b610ebdab1
|
fix: Unable to select table rows (#34753)
Fixes #34616 /ok-to-test tags="@tag.Anvil" <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Bug Fixes** - Improved row selection in the table widget to ensure consistent behavior when clicking and selecting rows. <!-- end of auto-generated comment: release notes by coderabbit.ai --> <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9807025998> > Commit: 0886840489bcd17e9eba4e8626456b095f48e52d > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9807025998&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` > <hr>Fri, 05 Jul 2024 10:57:35 UTC <!-- end of auto-generated comment: Cypress test results --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
2edfd6c1ec
|
chore: remove unevalTree (#34605)
## Description evalTreeWithChanges is sending a redundant property unevalTree in the payload, we should remove this property to reduce the serialisation cost of including this property in the payload. Fixes #34766 > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9807127090> > Commit: 73e226d70644bd0995e5c1c0b5b1d9c73e93e83a > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9807127090&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts > <li>cypress/e2e/Regression/ClientSide/Workspace/MemberRoles_Spec.ts > <li>cypress/e2e/Regression/ClientSide/Workspace/ShareAppTests_Spec.ts</ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. > <hr>Fri, 05 Jul 2024 11:46:05 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 handling of `unevalTree` by accessing it from `unEvalAndConfigTree` instead of directly from the message data in message handling logic. - **Tests** - Updated tests to reflect the removal of the `unevalTree` property and related assertions. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
37715085f3
|
fix: snowflake imports issue fixed (#34745)
## Description This PR fixes the intermittent issue in snowflake, where if we import the app containing snowflake and if we open the datasource it in edit mode, password field was not there. Root cause: When we are on slow 3g and when we don’t wait for datasources to load in reconnect dialog and quickly go to application, the authentication object does not get set, which causes snowflake password conditions to break and it does not show up. We tried by simulating slow 3g on all environments and were able to reproduce it Steps to test: - We can try importing following app json and simulating slow 3g in network tab - Once app is imported, when we see reconnect modal, quickly click on go to application before the datasources are loaded in the modal [Snow issue_aparna.json](https://github.com/user-attachments/files/16107584/Snow.issue_aparna.json) 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/9805844586> > Commit: 9868be55568774565f9c675d8cec92b12eb55d70 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9805844586&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > <hr>Fri, 05 Jul 2024 09:38:19 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new comparison operation `DEFINED_AND_NOT_EQUALS` for form controls. - **Bug Fixes** - Updated the Snowflake plugin to use `DEFINED_AND_NOT_EQUALS` for better validation of authentication type configurations. - **Improvements** - Enhanced form control logic to support more precise comparison checks. <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: “sneha122” <“sneha@appsmith.com”> |
||
|
|
d6f2d7ed7a
|
fix: Changes for Anvil Alpha release (#34211)
## Description This PR makes the following changes to prepare for the Anvil Alpha release - Add a toggle to the applications page header that allows us to toggle the Anvil feature flag from the UI. - Enable the above toggle if the toggle feature flag is enabled - When the toggle is enabled the following changes occur in the UX - Import application via Git is disabled and a callout is shown to the user - Git features are unavailable for users in Anvil applications - Copying and pasting widgets between two different layout systems is disabled and a warning message is shown to the user - Partial import export of widgets between two different layout systems is disabled and a warning message is shown to the user - CRUD page generation is disabled from datasources - Anvil applications and classic applications are separated into their own sections in the workspace. - In case any of the above sections are empty, an appropriate message is displayed in the empty section ### Screenshots     ### Other details - Toggle feature flag - `release_anvil_toggle_enabled` - Anvil feature flag - `release_anvil_enabled` Fixes #34578 Fixes #34576 Fixes #34575 Fixes #33718 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9793128338> > Commit: 09401272c1d52c915aee3b68925406f2f5f962ba > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9793128338&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. <!-- 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 Anvil toggle functionality to the page header. - Introduced layout compatibility checks for pasting widgets. - **Enhancements** - Updated widget paste action to verify layout system compatibility. - Improved handling and processing of user-uploaded JSON files for widget import. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
a2f2f795c8
|
chore: Turn off Allow filtering property on Table widget (#34593)
https://github.com/appsmithorg/appsmith/issues/34591 ## Description Making _Allow filtering_ option false by default. <img width="798" alt="Allow filtering off" src="https://github.com/appsmithorg/appsmith/assets/121817440/8ac64773-2385-433d-96fa-0a90080e2462"> Fixes #34591 _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, @tag.Widget, @tag.Binding, @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/9795462304> > Commit: e0c1e8376b702f13b9640c880cf5606af070a420 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9795462304&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Table, @tag.Widget, @tag.Binding, @tag.Sanity` <!-- 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 - **Bug Fixes** - Filtering is now disabled by default for the `TableWidgetV2`. - **Tests** - Updated test scripts to enable filtering for `TableWidgetV2` in multiple scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Jacques Ikot <jacquesikot@gmail.com> |
||
|
|
a1b3109449
|
fix: Overflow list new UI restore (#34658)
## Description Overflow list view changes was reverted because of Anvil failures in EE. This PR add the changes back. Fixes #33432 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9802067318> > Commit: 18b7a5780abca4e5813d9089c31a01a31f1d348a > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9802067318&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. > <hr>Fri, 05 Jul 2024 03:11:20 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced several new React components (`FileTab`, `AddTab`, `List`, `ScreenModeToggle`, `EditorTabs`) to enhance the IDE tab management and user interaction. - **Bug Fixes** - Improved drag-and-drop (DnD) simulation logic by using `realMouseMove` method. - **Refactor** - Simplified and refactored the `FileTabs` component, improving its encapsulation and rendering logic. - Enhanced state and props handling across various tab components and hooks. - **Tests** - Updated test IDs and test logic to ensure consistency and correctness for tab interactions and states. - **Style** - Updated styled components, replacing tab-related styles with list-related styles to improve UI consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
73788f91f4
|
chore: add notification prop to js object (#34640)
## Description The PR adds a new prop to be passed to the JSObject editor to show a banner or notification. This also adds uniform styling to the other editors PR for https://github.com/appsmithorg/appsmith-ee/pull/4485 ## Automation /ok-to-test tags="@tag.Datasource, @tag.IDE, @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/9759655417> > Commit: 8bc7746531e2ad1f4c84d81cc3092a3042b55a95 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9759655417&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource, @tag.IDE, @tag.JS` <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced styled notification components across various editor forms to enhance user alerts and notifications. - **UI Enhancements** - Improved the visual presentation of notifications within the Editor by wrapping them in a new styled notification wrapper. - **Bug Fixes** - Ensured that notifications are conditionally displayed, improving the clarity and user experience in the Editor forms. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
52e8cda21d
|
fix: Avoid collapsing widget tags when in Anvil (#34718)
## Description Based on [this discussion](https://theappsmith.slack.com/archives/C02JT9CSE6L/p1720083186027799) we are changing [this](https://github.com/appsmithorg/appsmith/issues/34386) behaviour to not apply on Anvil Layouts ## Automation /ok-to-test tags="@tag.Anvil, @tag.Widget" ### 🔍 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 - **New Features** - Improved logic for widget tags based on the new `isAnvil` layout flag. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
65eefed978
|
fix: Update SelfReferenceRule to show entity's other property completion (#34686)
## Description Update the selfReference autocomplete rule to show completion for the entity's other property when writing JS in one of its property. Fixes https://github.com/appsmithorg/appsmith/issues/34684 ## Automation /test 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/9780079455> > Commit: 03eb92fdda61a917829be20fb6f5d99562f162f3 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9780079455&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.JS` <!-- 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 - **Bug Fixes** - Improved accuracy of autocomplete suggestions by refining self-reference detection logic. - **Tests** - Added new test cases to verify proper blocking of self-referencing completions. - Updated existing tests to include `propertyPath` in entity sorting validation. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4bbe28a4f3
|
chore: update local uneval tree only for jsObjects and exit early for other entities (#34524)
## Description When a new evaluation cycle starts the uneval tree goes through a processing for updating the js objects in the right format. But the update condition depends on values present in `JSObjectCollection`. Due to the nature of evaluation for modules; when a JSModule is opened in an editor then the JSModule in evaluation is treated as a jsobject but when a different JSModule is opened then the previously opened JSModule is treated as a JSModule instance. Since in one of the eval cycle the first JSModule was treated as an JSObject so it's functions made it's way into the `JSObjectCollection` and now when it was treated as `JSModuleInstance`, due to it's functions present in `JSObjectCollection` during previous eval cycles; it's values gets altered which is undesirable. The change here dictates that if an entity is a JSObject, then only proceed for any alteration else the dataTree for the entity stays intact. PR for https://github.com/appsmithorg/appsmith-ee/pull/4547 ## 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/9707356261> > Commit: f242dfa22d6a7e29dab7f3532e3697e9b9282f78 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9707356261&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `` <!-- 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 - **Bug Fixes** - Enhanced stability and control flow in the `DataTreeEvaluator` to prevent issues when processing non-JSAction entities. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
fe0ccaaf0a
|
chore: Show only a limited set of widgets in the beginning (#34644)
## Description Controls the collapsible sections of the Widget Add pane. This will ensure we do not show all the widgets for add when a new user is exploring for the first time. Once the users adds a widget, the other sections opens up automatically. Also removes List and JSONForm widgets from the SuggestedWidget tag Fixes #34386 ## Automation /ok-to-test tags="@tag.Widget, @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/9777505836> > Commit: a604723af91330158f513764b45051d8be75dc6c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9777505836&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget, @tag.IDE` <!-- 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** - Sidebar and tag groups now dynamically open based on widget presence. - **Improvements** - Enhanced initial open state control for tag groups. - Updated widget tag assignments to prioritize layout and display widgets. - **Bug Fixes** - Corrected widget tag selectors to ensure accurate UI element targeting. - **Tests** - Refactored and updated test cases for widget sidebar functionality and UI consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0b4d664558
|
chore: Remove strict payload parsing (#34680)
Reverting https://github.com/appsmithorg/appsmith/pull/33724 temporarily, until we gain more confidence. [Slack conversation](https://theappsmith.slack.com/archives/C040LHZN03V/p1719997989677959). <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved server configuration by removing unnecessary custom object mapper settings. - Optimized data source handling by cleaning up authentication object manipulations. - **New Features** - Introduced a new method for future strict type checking on the server. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: “sneha122” <“sneha@appsmith.com”> |
||
|
|
5d879ec670
|
feat: clean up datasource review page (#34655)
## Description Remove the "Generate new page" button from the datasource review page and make the "New Query" button a primary button. Tests related to the removed generate CRUD page feature have been removed. Fixes #31801 ## Automation /ok-to-test tags="@tag.Datasource" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9772204191> > Commit: 1d77326f4674abe6143d5c7031f91130a4bf5598 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9772204191&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource` <!-- 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 conditionally show the `Generate Page` button based on the drag and drop building blocks setting. - **Tests** - Added tests to verify the rendering of components and buttons based on feature flags and plugin types. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
daeeb21fdb
|
fix: selected gsheets issue fixed (#34659)
## Description Fixes release blocker issue: https://github.com/appsmithorg/appsmith/issues/34654 Fixes #`Issue Number` _or_ Fixes [`Issue URL`](https://github.com/appsmithorg/appsmith/issues/34654) > [!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/9773245154> > Commit: d21b7eeb4724d584c65c88bfd029da200c893360 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9773245154&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` <!-- 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 authentication status in data source management. <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: “sneha122” <“sneha@appsmith.com”> |
||
|
|
ce930598a1
|
feat: Refactor SelectWidget sourceData handling (#34619)
## Description This pull request refactors the sourceData handling in the SelectWidget component. It introduces a dynamic property path for the sourceData in the SelectWidget configuration, allowing it to be passed as a JSON string. This change ensures that the source data matches the sample data passed for the widget configuration, enabling the switching back of the JS toggle button. Additionally, it fixes cypress tests: opening of the prop pane in JS mode. Fixes #34568 _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.Widget, @tag.Select, @tag.Binding" ### 🔍 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/9758347627> > Commit: 01e5b4fba240667eaa0818330047489d94c01a46 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9758347627&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget, @tag.Select, @tag.Binding` <!-- 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 - **Bug Fixes** - Improved stability of test scenarios by ensuring JavaScript mode is toggled appropriately. - **Tests** - Updated test cases to include JavaScript mode toggling for more accurate test outcomes. - Renamed and restructured test files to enhance clarity and maintainability. - **New Features** - Enhanced `SelectWidget` to initialize `sourceData` with a stringified array and made `sourceData` dynamically configurable. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
5cc4734f23
|
fix: fix split mode resizing inconsistency (#34517)
## Description Fixes a "weird resizing bug" described in related issue. Fixes #33483 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9683985775> > Commit: 4fe7b5ffb1e98f9b82f6198790554131f95404ba > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9683985775&attempt=6&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: `` > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/BugTests/Binding_Bug28731_Spec.ts > <li>cypress/e2e/Regression/ClientSide/OneClickBinding/JSEnabledByDefaultExperiment_spec.ts > <li>cypress/e2e/Regression/ClientSide/OneClickBinding/SelectWidget/mongoDB_spec.ts > <li>cypress/e2e/Regression/ClientSide/OneClickBinding/SelectWidget/postgres_spec.ts </ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. <!-- 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 - **Refactor** - Improved the app's layout resizing performance by optimizing debounced functions and updating the ResizeObserver usage for better responsiveness. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
19623ddd7a
|
fix: added backwards compatibility for older snowflake datasources (#34628)
## Description This PR adds backwards compatibility for older snowflake datasources so that we wont need migration. With new updates on snowflake plugin for key pair authentication, we have introduced a new field in authentication object called authenticationType, this field is responsible for telling us whether it's a basic authentication or key pair authentication. For older datasources, this field wont be there, so in order to ensure that those datasource continue to work smoothly, we have added a fallback mechanism, where if any datasource does not have authentication field, it will be considered as basic auth and we will set its properties accordingly. This PR adds that support ### Steps to test: 1. Create a snowflake datasource along with queries on app.appsmith.com 2. Attach these queries to table widget so they run on page load 3. Export this app and get json 4. Import this json on the DP of this PR, the queries should work Fixes #34627 _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.Datasource" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9759249212> > Commit: f68972710918b450d989c1d28a9286a397fc08bd > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9759249212&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource` <!-- 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** - Enhanced backward compatibility for Snowflake plugins by handling cases where `authenticationType` is not present in older datasources. - **New Features** - Improved datasource configuration by cleaning the authentication object in the `DatasourcesApi`. - **Refactor** - Simplified authentication type handling by removing unused `USERNAME_PASSWORD` and `KEY_PAIR` enums in `DBAuth`. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: “sneha122” <“sneha@appsmith.com”> |
||
|
|
562c524010
|
revert: clean up datasource review page (#34642)
Reverts appsmithorg/appsmith#34348 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced button display conditions based on plugin permissions in the Data Source Editor. - **Bug Fixes** - Corrected logic for feature flags in Data Source Editor to ensure consistent button behavior. - **Refactor** - Improved import structure and code readability in Data Source Editor components. - **Chores** - Removed outdated feature flag checks for `releaseDragDropBuildingBlocks` across multiple files. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
32e266222d
|
fix: anvil canvas highlight (#34553)
## Description Chang Anvil highlight behaviour: - Chang the behaviour for an empty canvas - Fix the behaviour inside the zone https://github.com/appsmithorg/appsmith/assets/11555074/9f4697ec-b84a-4d3c-a568-42cf2006528f Fixes #33443 ## Automation /ok-to-test tags="@tag.Anvil" ### 🔍 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/9758888261> > Commit: 40f63c19a687e532f5698ceaabba69a281d5c2c8 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9758888261&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` <!-- 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 padding and dimension calculations for better highlight accuracy in the canvas editor. - **Bug Fixes** - Adjusted highlight width calculations for empty canvases. - Corrected compensators for widget alignment to ensure precise positioning. - **Tests** - Updated test cases to reflect changes in highlight width calculations and widget dragging behavior. - **Refactor** - Renamed variables and adjusted identifiers for clarity and consistency in highlight tests. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
ec5244ce30
|
feat: clean up datasource review page (#34348)
## Description Remove the "Generate new page" button from the datasource review page and make the "New Query" button a primary button. Tests related to the removed generate CRUD page feature have been removed. Fixes #31801 ## Automation /ok-to-test tags="@tag.Datasource" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9644141773> > Commit: b1671022d7eee6a676103281dc2e7f5df8bfd513 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9644141773&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource` <!-- 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** - Removed outdated test cases that were no longer relevant or causing issues in MongoDB and S3 CRUD operations. - **New Tests** - Added `HideGeneratePageButton.test.tsx` to verify the visibility of buttons based on feature flags and user permissions. - **Refactor** - Improved code structure by reordering imports and simplifying logic in various datasource-related components. - Removed deprecated methods and functions related to page generation from datasource components. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
84bcb84066
|
fix: Revert "feat: Overflow tabs list view" (#34613)
## Description
This reverts commit
|
||
|
|
b5c5fb2fb3
|
chore: Revert "Add dynamic property path for sourceData in SelectWidget (#34574)" (#34618)
**/test binding** <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9754334718> > Commit: 2c67d23abd75ce763c6e8eac2b1d9582bccca875 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9754334718&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Binding` <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved the internal handling of `sourceData` within the Select widget for better performance and maintainability. - **Tests** - Updated test cases for the Select widget to reflect the new handling of `sourceData`. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
55b6e6d8d8
|
test: Extract pageId with regex to cover more cases (#34521)
There's a few places in Cypress tests that are trying to extract the page ID using `.split`, especially with just the path information, instead of the whole URL. So this PR changes the extraction implementation to use a regex, to support all three cases we need: 1. Full absolute application+page URL. 2. Just the path of an application+page URL. 3. Just the path of an application with a custom slug. 4. Full absolute application with a custom slug. (Supported, but we don't need this today). We've also fixed the URL parsing for the (very) old application URLs that didn't use slugs in the URL at all. This was making `FocusEntity.test.ts` fail. Fixed that test as well as improved it's error reporting. Before this PR:  After this PR:  No conflicts to EE. /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/9713573983> > Commit: 49edbce5ae85ee7fe9f4d2df05e2933347ddb3f4 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9713573983&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `` <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved URL handling by centralizing page ID extraction logic across various tests and components. - Updated deprecated path constants to include ID extraction patterns for better consistency. - Enhanced code readability and maintainability by moving page ID extraction to a helper method. - **Tests** - Modified test cases to dynamically set `applicationId` and `pageId` instead of hardcoding values, ensuring more flexible and maintainable test scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
eaf1fa495c
|
feat: snowflake key auth server (#34548)
## Description This PR adds new authentication method for snowflake: Use of public and private keys to authorise a snowflake database. Snowflake provides a couple of authentication mechanisms in order to authenticate the DB. Currently appsmith only provides a way to authorise using username and password. This PR adds support for private key authentication, where by user can set a public key on their DB and they can use corresponding private key in appsmith to authorise the datasource. In snowflake DB form, we have added a new field for authentication type which has two options: Basic and Key pair. Basic will allows us to authenticate using username and password. Key pair will provide us a way to upload the private key along with input field for adding passphrase (In case of encrypted private key). More info: https://docs.snowflake.com/en/user-guide/key-pair-auth https://github.com/appsmithorg/appsmith/assets/30018882/99774925-12a3-4cc0-af0a-614c3574cdc3 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.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/9743830603> > Commit: cb64fffc9e181558525e020a4597b616eeacea7a > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9743830603&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Datasource` <!-- 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 Snowflake integration with improved connection creation and authentication handling (key pair and basic auth types). - **Bug Fixes** - Fixed issues related to handling authentication objects within datasource configuration to ensure more reliable connections. - **Documentation** - Added new error messages for passphrase requirements and incorrect passphrase or private key for encrypted private keys. - **Tests** - Updated tests to verify the correct setting of authentication types in the Snowflake plugin. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com> Co-authored-by: Aman Agarwal <aman@appsmith.com> Co-authored-by: “sneha122” <“sneha@appsmith.com”> |
||
|
|
f25cae0513
|
chore: Change the default value of isLoading in settings reducer to true (#34490)
## Description This PR makes sure that the initial value of `isLoading` in the settings reducer is set to true. This flag is used to conditionally render the loading component and the AdminSettings component in `app/client/src/pages/AdminSettings/index.tsx`. This change makes sure that the Admin Page components are not mounted and unmounted on initial render. The mouting and unmounting used to happen earlier because the flag switched from false => true => false. 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/9737924972> > Commit: 553b867bfa7a72d97bd54d4ef10f5ce9fee665e4 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9737924972&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` <!-- 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 - **Bug Fixes** - Improved initial loading state of settings to enhance user experience during app startup. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
938e7b4dca
|
feat: Add dynamic property path for sourceData in SelectWidget (#34574)
## Description Add dynamic property path for sourceData in SelectWidget. Fixes #34568 _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.Widget" ### 🔍 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/9712372976> > Commit: c5521e46382d448715183862aededc142136db0a > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9712372976&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget` <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced the Select Widget with a new property to support dynamic property paths. - **Tests** - Added new tests to validate the dynamic property paths functionality in the Select Widget. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4c073129fc
|
chore: Fix datasource creation throwing 400 (#34588)
The recent changes to deny any requests that have unrecognized fields in the body, is making the datasource creation API fail. This is because we are sending extra fields that shouldn't be sent. [Slack conversation](https://theappsmith.slack.com/archives/CPQNLFHTN/p1719577339838649?thread_ts=1719466294.012589&cid=CPQNLFHTN). **/test sanity datasource** <!-- This is an auto-generated comment: Cypress test results --> > [!WARNING] > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9714799545> > Commit: 85495fbcf6ec641162c7c30ea8f758dcaee380e3 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9714799545&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity, @tag.Datasource` > It seems like **no tests ran** 😔. We are not able to recognize it, please check <a href="https://github.com/appsmithorg/appsmith/actions/runs/9714799545" target="_blank">workflow here</a>. <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced data security by adding a method to sanitize and retain only necessary authentication information for various authentication types. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e662e7edc7
|
fix: workflow js func rename code split (#34512)
## Description This is a code split PR for [EE change](https://github.com/appsmithorg/appsmith-ee/pull/4536) which fixes rename of functions inside of a js object. Fixes [#34470](https://github.com/appsmithorg/appsmith/issues/34470) ## 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/9690260557> > Commit: 6da583fea14638c183a6b81d61c1870f7ea694f5 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9690260557&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` <!-- 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 an optional `workflowId` field to enhance the functionality of JavaScript actions and workflows. - **Tests** - Updated tests to include the new `workflowId` field. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d8b9eed1e6
|
test: updated flow for GitSync (#34239)
RCA: Click on the dropdown was not working intermittently Solution: updated the flow, 1. Wait for the destination dropdown 2. Click on the destination dropdown 3. Assert the branch name visible post dropdown has opened 4. Click on the destination branch <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Bug Fixes** - Enhanced the `mergeBranch` process in GitSync to ensure better stability and accuracy by adding assertions for element appearances, disappearances, network status, and the presence of a destination branch. - **Tests** - Switched limited test spec from `Fork_Template_spec.js` to `GitSyncedApps_spec.js` and added `GitBugs_Spec.ts` for improved test coverage and accuracy. - **Refactor** - Changed `className` attribute to `data-testid` in the `Select` component within the GitSync merge tab for improved testing and readability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com> |
||
|
|
6f9e4503a5
|
fix: Update BuildingBlockSagas to handle nested object value replacement in queries (#34563)
## Description This pull request updates the BuildingBlockSagas module to handle nested object value replacement in queries. Previously, the module only replaced values at the top level of the object, but now it correctly handles nested values as well. This improves the accuracy and reliability of the queries. The changes include adding a new utility function, `accessNestedObjectValue`, which is used to access and update nested values in the `actionConfiguration` object. Additionally, the `updateWidgetsNameInNewQueries` function has been modified to use this utility function when replacing widget names in queries. Overall, these changes enhance the functionality of the BuildingBlockSagas module and ensure that queries are properly updated with the new widget names." 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.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/9698473149> > Commit: 6e82692e4cbf8d2e9630499006aa2e0f8adbfdd3 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9698473149&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget` <!-- 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 - **Refactor** - Enhanced internal logic for updating nested object values in widget names. - **Tests** - Added new test case for handling `null` or `undefined` inputs in utility functions. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |