da6d497271
193 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
1f25adccd7
|
chore: remove padding for anvil embed apps (#37173)
## Description I removed the styles from the DSL and changed the layout type for main container to `LAYOUT_COLUMN`. ## 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/11720581716> > Commit: 4ccd8772d1e4f11e1638213787b646932301762c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11720581716&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 07 Nov 2024 11:30:39 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 the `MainCanvasWrapper` component for dynamic styling based on URL parameters. - Added a new rendering behavior for the `LayoutColumn` component. - **Improvements** - Updated highlight derivation and layout type in the `LayoutColumn` component. - Simplified layout structure in the `anvilDSLTransformer` function. - Adjusted layout properties for better alignment and spacing in the `LayoutColumn` component. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d6305bad82
|
chore: chat widget polish fixes (#37124)
- [x] Fix button variant control in the property pane #37005 - [x] elevatedBackground for chat should work the same as for statbox - [x] Markdown polishing. We need to fix lists, inline code, etc. Check how it works with a table. /ok-to-test tags="@tag.Anvil" <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - **New Features** - Introduced a new `noPadding` property for the `ContainerComponent`, allowing for conditional styling. - Enhanced styling for segmented controls and input components for improved visual clarity and responsiveness. - **Bug Fixes** - Refined CSS selectors for separators in segmented controls to improve visual representation. - **Style** - Adjusted styles for input groups and inline code elements for better alignment and visual feedback. - **Documentation** - Updated Storybook configuration for the `Markdown` component to reflect new formatting changes. <!-- 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/11571964148> > Commit: 29bac9bcdc0b95d4a6a4da2b4f503aa9494d7bcb > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11571964148&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Anvil` > Spec: > <hr>Tue, 29 Oct 2024 10:51:44 UTC <!-- end of auto-generated comment: Cypress test results --> |
||
|
|
5da5a1e507
|
chore: chore: add SVGR to appsmith-icon package, add processing for custom icons, update date-fns (#37115)
## Description - chore: add SVGR to appsmith-icon package - add processing for custom icons - update date-fns Changes are necessary for [this EE PR](https://github.com/appsmithorg/appsmith-ee/pull/5448). ## 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/11551127644> > Commit: 44fd968044ad5a5ca173c565b3b0c1d6f030cd1e > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11551127644&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Mon, 28 Oct 2024 10:11:55 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - **New Features** - Introduced `AIAvatarCustomIcon` component for enhanced icon customization. - Added `CustomIcons` documentation in Storybook for better visibility of custom icons. - **Improvements** - Updated multiple icon components to accept SVG properties, enhancing flexibility and reusability. - Enhanced type safety for `IconCmp` and `ThumbnailCmp` properties across various interfaces. - Expanded functionality in the `generateStories` function to include stories for custom icons. - **Chores** - Improved import statements and export structures for better code organization. - Extended cleanup functionality to ensure directories are properly managed. - Modified the `generateComponents` function to utilize a more robust SVG-to-React transformation process. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
85226f48cc
|
chore: fix blueprint operation inconsistency for zone (#36980)
In anvil, when widgets are dropped on canvas, we create a zone which has
`visual separation` marked as true by default.
Now, There is a usecase for the chat widget in which we want to modify
the zone`s `Visual separation` to false on creation of zone.
The code for bleuprint operation for chat widget would like this:
```js
blueprint: {
operations: [
{
type: BlueprintOperationTypes.MODIFY_PROPS,
fn: (
widget: FlattenedWidgetProps,
widgets: CanvasWidgetsReduxState,
parent: FlattenedWidgetProps,
layoutSystemType: LayoutSystemTypes,
) => {
if (layoutSystemType !== LayoutSystemTypes.ANVIL) return [];
const updates: UpdatePropertyArgs[] = [];
const parentId = widget.parentId;
if (!parentId) return updates;
const parentWidget = widgets[parentId];
// we want to proceed only if the parent is a zone widget and has no children
if (
parentWidget.children?.length === 0 &&
parentWidget.type === "ZONE_WIDGET"
) {
updates.push({
widgetId: parentId,
propertyName: "elevatedBackground",
propertyValue: false,
});
}
return updates;
},
},
],
},
```
This should work fine, but in the code where we create zone and attaching widgets to it, after running the blueprint operations, we were not using the correct updated zone that returned from blueprint operations of the child widgets. This PR uses the correct zone.
Also there is a case where blueprint operation is not able to update the existing widgets because all properties of existing widgets were readonly. So cloned the widgets from redux before passing to widget addition saga functions.
/ok-to-test tags="@tag.All"
## Summary by CodeRabbit
- **New Features**
- Improved clarity in widget handling by renaming parameters related to dragged widgets.
- Streamlined the process of adding widgets to zones by simplifying parameter structures.
- **Bug Fixes**
- Enhanced immutability in widget property updates within the state management process.
- **Style**
- Updated CSS styles for the `.markdown` class, removing unnecessary pseudo-elements for improved formatting.
<!-- 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/11474751370>
> Commit: 8a385eec313142b40f848eed20310d3774c0705c
> <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11474751370&attempt=3" target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 23 Oct 2024 09:47:24 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**
- Improved clarity in widget handling by renaming parameters related to dragged widgets.
- Enhanced functionality for adding widgets to zones by simplifying the data structure used.
- Implemented safer state manipulation for widget addition using a deep copy approach.
- **Bug Fixes**
- Addressed potential issues with direct state mutation during widget addition.
- **Style**
- Updated CSS styles for the Markdown component by removing unnecessary pseudo-elements.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
839e89e8ea
|
chore: add new ADD_ACTION blueprint operation type (#37078)
## Description This PR is CE part of main [EE PR](https://github.com/appsmithorg/appsmith-ee/pull/5368). This PR implements a new ADD_ACTION blueprint operation type. ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/11508513702> > Commit: ef5ed889ab5711bab162c2a947758da3726f64b5 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11508513702&attempt=3" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Fri, 25 Oct 2024 07:17:20 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new enum for handling data source creation and updates. - Enhanced application creation logic with updated naming conventions based on layout features. - Improved workspace management functionalities, including application import and user invitation processes. - **Bug Fixes** - Enhanced error handling and state management across various components and sagas. - **Documentation** - Added comments to clarify temporary solutions in CSS for widget interactions. - **Chores** - Removed obsolete Avatar component and related files, streamlining the design system. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
6514c6ed4e
|
fix: fix highlight position (#37011)
## Description Fixes #37004 > [!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/11478380759> > Commit: 5aaf9dffd402032da789f495279440f422dba795 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11478380759&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Wed, 23 Oct 2024 11:32: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 - **Style** - Updated the `.anvil-canvas` class to include a new `position: relative;` property, enhancing the layout and positioning context of the canvas element. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b122c8195f
|
chore: decouple widget-config.json from main chunk (#36924)
## Description We decoupled the widget-config.json file (177KB when zipped) from the main bundle and implemented lazy loading during DSL migrations. This optimisation reduces the size of the main chunk by 10%, which should lead to better performance, specifically improving FCP and LCP, as the main chunk's fetch and evaluation times are reduced 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/11384816747> > Commit: ae14b3f40c4c1ef77250157e56aed97acae5cbaf > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11384816747&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 17 Oct 2024 15:04:34 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Enhanced migration logic for DSL widgets with asynchronous operations. - Improved performance with lazy loading of widget configurations. - Added optional properties to page response data structures. - **Bug Fixes** - Resolved issues with dynamic binding path migrations. - **Tests** - Updated test cases to handle asynchronous operations for better reliability and accuracy. - **Chores** - Improved type safety and error handling in widget factory utilities and mock functions. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
199638229b
|
chore: move wds widgets to modules (#36511)
## Description Fixes #36510 _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/11015252866> > Commit: a5fae728c0f857b2ff62a4f6a3bc50b1b377c2bd > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11015252866&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Tue, 24 Sep 2024 14:30:02 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **Chores** - Updated import paths for various components and types to reflect a new directory structure, enhancing organization and maintainability. - Modified paths for multiple widgets including `WDSInputWidget`, `WDSBaseInputWidget`, `WDSModalWidget`, and `MenuButtonWidget`, ensuring consistent access to resources. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
cd3472ac1d
|
chore: delete unused code (#36461)
## Description The second round of deleting unused files, `.ts` were added to the check. [Related EE PR](https://github.com/appsmithorg/appsmith-ee/pull/5205) ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10991435044> > Commit: 7cfbcb9f9028c7cca5f06ae5a3836762e94214ec > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10991435044&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Mon, 23 Sep 2024 10:51:02 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Expanded project file scope to include JavaScript files alongside TypeScript files. - **Bug Fixes** - Removed obsolete functions and constants related to help, tour, and API functionalities, improving overall code clarity and maintenance. - **Chores** - Deleted several unused files and constants across various components, enhancing project organization and reducing clutter. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
c76e6c031c
|
chore:delete unused files (#36368)
## Description I used [knip](https://knip.dev/) to identify unused files. There will be a few more related PRs, after that I will add CI check for this. Fixes #35778 Related EE PR https://github.com/appsmithorg/appsmith-ee/pull/5165 ## 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/10940962461> > Commit: 31749570e9a3f9e4cce250eedba4ec18aace23f9 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10940962461&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Thu, 19 Sep 2024 12:55: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 |
||
|
|
d6f249b42d
|
chore: add blank line eslint rule (#36369)
## Description Added ESLint rule to force blank lines between statements. Fixes #`Issue Number` _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10924926728> > Commit: 34f57714a1575ee04e94e03cbcaf95e57a96c86c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10924926728&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > Spec: > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/Anvil/AnvilModal_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilStatsWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchGroupWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilTableWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilToolbarButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilZoneSectionWidgetSnapshot_spec.ts</ol> > <a href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master" target="_blank">List of identified flaky tests</a>. > <hr>Wed, 18 Sep 2024 16:33:36 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No --------- Co-authored-by: Valera Melnikov <valera@appsmith.com> |
||
|
|
60dbda49e7
|
chore: Transitions for IDE (#35714)
## Description Uses `AnimatedGridLayout` component to introduce transitions for the IDE. This is behind a feature flag Fixes #34538 Fixes #30863 Fixes #34544 ## 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/10737363879> > Commit: a912f5c52366abe48768727a1c605cd72b48752c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10737363879&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/ServerSide/OnLoadTests/ExecuteAction_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, 06 Sep 2024 16:32: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 ## Summary by CodeRabbit - **New Features** - Introduced two new layout components: `AnimatedLayout` and `UnanimatedLayout` for improved editor interface structuring. - Added TypeScript type definitions for the DOM View Transitions API to enhance type safety and developer experience. - Implemented custom hooks, `useGridLayoutTemplate` and `useEditorStateLeftPaneWidth`, for dynamic grid management and left pane width calculation in the IDE layout. - **Improvements** - Enhanced layout responsiveness with the addition of dynamic grid management. - Updated the `Editor` component to use a centralized constant for height calculations, improving maintainability and consistency. - Enhanced test accuracy by refining assertions in the Git Branch Protection test suite. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Sagar Khalasi <sagar@appsmith.com> |
||
|
|
4c72fbe993
|
chore: add code for paragraph-text morphing (#36065)
/ok-to-test tags="@tag.All" <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Enhanced configurability of input widgets with new dependency tracking and update mechanisms. - Introduced dynamic font size updates for paragraph widgets, improving typography control. - Expanded configuration options for paragraph widgets with a new `fontStyle` property. - Added a new type alias for input types, improving type safety and reliability. - Improved modularity by consolidating exports for better usability. - Introduced unit tests for font size update functionality, ensuring reliability. - Added unit tests for read-only update functionality, validating correct behavior across widget types. - **Bug Fixes** - Improved widget state management through the addition of read-only update hooks. <!-- 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/10719066708> > Commit: 395574adcedb9da91bb49c5ed7e9415d03fd6f87 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10719066708&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 05 Sep 2024 12:06:57 UTC <!-- end of auto-generated comment: Cypress test results --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
65eb8546f4
|
fix: Fall of the error toasts wall (#35839) | ||
|
|
26e1c88a7b
|
chore: move anvil widgets to wds (#35812)
## Description - Moved Section and Zone widgets to wds folder Fixes #35810 > [!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/10511698329> > Commit: 67868d550cebe7b2393803c805132b548c6f1046 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10511698329&attempt=3" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 22 Aug 2024 18:06:57 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Introduced new `WDSSectionWidget` and `WDSZoneWidget` components, reflecting a new namespace for widget organization. - Added new constants and an enumeration for widget configuration in the `wds/constants` module. - **Improvements** - Updated import paths for various constants and components to streamline the codebase organization. - **Collaboration Enhancements** - Updated ownership in the `CODEOWNERS` file to include both the `@appsmithorg/wds-team` and `@appsmithorg/anvil-team` for better collaboration on widget development. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f91073eae1
|
chore: fix zone dotted highlight is not showing up on new anvil apps (#35787)
Fixes #35231 /ok-to-test tags="@tag.Anvil" Before:  After:  <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Improved widget border style handling by simplifying parameters and logic. - Enhanced visual consistency by removing the `elevatedBackground` consideration from various components. - Refined test logic to focus on section properties during space distribution. - **Bug Fixes** - Addressed potential inconsistencies in widget appearance related to background elevation settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> <!-- This is an auto-generated comment: Cypress test results --> > [!CAUTION] > 🔴 🔴 🔴 Some tests have failed. > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10503394684> > Commit: 574aab588e35fc90e59720010e2b8a249bf824ed > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10503394684&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.Anvil > Spec: > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCurrencyInputWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilHeadingWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInputWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts > <li>cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilPhoneInputWidgetSnapshot_spec.ts</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>Thu, 22 Aug 2024 07:30:08 UTC <!-- end of auto-generated comment: Cypress test results --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
66e535df65
|
chore: Rename wds packages (#35686)
/ok-to-test tags="@tag.Widget" ## 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 --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10414775054> > Commit: 445dec9a23df945a5b2a965ce39b8369641bd2b8 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10414775054&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Widget` > Spec: > <hr>Fri, 16 Aug 2024 05:45:49 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
ed17ee0376
|
chore: ce - remove sentry performance tracker (#35710)
## Description Fix the following errors ### POST https://o296332.ingest.sentry.io/api/1546547/envelope/... 429 (Too Many Requests) We have an integration with Sentry to instrument page loads and other transactions. This is no longer used. All page load metrics are collected using a new relic integration. The sentry transactions api was throwing a 429 error when we exceed our trial quota. Removing the integration should curb this error. <img width="1181" alt="Screenshot 2024-08-15 at 1 22 28 PM" src="https://github.com/user-attachments/assets/543c0ec1-e87f-4439-b715-e75b3a6fd3ed"> [Slack thread ](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1723699775838509)for more context on our sentry sub exceeding its quota. ### TypeError: e.className.split is not a function at t.value (PageLoadInstrumentation.ts:112:33) Add a type check for string. Fixes #`Issue Number` _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10400625143> > Commit: fc83198b613a973c9a02644fc742947a92bfbd3c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10400625143&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 15 Aug 2024 08:45:49 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Removed performance tracking functionality across various components and sagas, simplifying the codebase and reducing overhead. - **Bug Fixes** - No specific bug fixes were made; improvements focus on performance tracking removal. - **Chores** - Eliminated unnecessary dependencies related to performance metrics, streamlining the application's dependency management. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b6a785b0a4
|
chore: use translate to center the resize handle (#35665)
Fixes #35232 Because of how sub-pixels are handled in browsers, the resize handle was previously looking more inclined towards right. By using translate instead adjusting the width in left property, the issue seems to be resolved. Before: <img width="65" alt="CleanShot 2024-08-13 at 17 08 47@2x" src="https://github.com/user-attachments/assets/04f65b6a-6ef6-435f-91ea-3ebf1c12e7ab"> After: <img width="71" alt="CleanShot 2024-08-13 at 17 08 00@2x" src="https://github.com/user-attachments/assets/bc29017c-c12c-49ee-a14e-270f33b3a6a6"> </details> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced positioning logic for the space distribution handle, simplifying the alignment process and potentially improving rendering behavior. - **Documentation** - Added comments to clarify the rationale behind adjustments in the positioning logic and highlight the benefits of using `translateX` for centering. - **Bug Fixes** - Resolved potential pixel snapping issues related to the handle's positioning. <!-- end of auto-generated comment: release notes by coderabbit.ai --> <!-- This is an auto-generated comment: Cypress test results --> > [!WARNING] > Tests have not run on the HEAD 801900efe8c65439e1b82db3fb309dcd59e461a3 yet > <hr>Tue, 13 Aug 2024 12:05:21 UTC <!-- end of auto-generated comment: Cypress test results --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
31be835726
|
chore: Anvil on canvas UI tests (#35342)
## Description ### Unit `index.test.tsx` - (Main connected component that uses floating ui) - [x] Test rendering of widget name component (floating-ui) based on "select", "focus" and "none" states from redux selector - [x] Test rendering of widget name component (floating-ui) based on error count from redux selector `AnvilWidgetNameComponent.test.tsx` (Standalone component that renders content for floating ui to use) - [x] Test rendering of standalone widget name component based on props. - [x] Test calling of `onDragStart` callback from the standalone widget name component. `SplitButton.test.tsx` (Low level UI component - child of `AnvilWidgetNameComponent`) - [x] Test left and right toggle click triggers - [x] Test if component handles props correctly ### E2E - [x] Test Dragging via widget name component - [x] Test widget name component when multiple widgets are selected - [x] Test Hover and Selection to show widget name component Fixes #33979 ## 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/10349986042> > Commit: 8c9e6b933fc63306ca4b9322d2cc109909df879d > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10349986042&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Mon, 12 Aug 2024 11:13: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 ## Summary by CodeRabbit - **New Features** - Introduced a comprehensive suite of end-to-end tests for the Anvil editor's UI in canvas layout mode. - Enhanced flexibility in widget manipulation on the canvas with an updated method. - Expanded selectors for more precise targeting of UI components. - Added unit tests for the `AnvilWidgetNameComponent` and `SplitButton` components to ensure expected functionality. - **Bug Fixes** - Improved responsiveness of the `AnvilWidgetName` component to state changes. - **Documentation** - Updated comments and structure for clarity in test scenarios and component functionality. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b64d5c8338
|
fix: drag and drop issue in list widget (#35622)
## Description This pull request fixes an issue where the error count was not being properly checked when a list widget was dropped. * Reverts a previous commit(#35221). * Include changes to the test file and the widget creation functions to ensure that the error count is correctly checked when a list widget is dragged and dropped. Fixes #35578 _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/10350318730> > Commit: 07f3abcff845eb4d350fc9af235d6ed076257264 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10350318730&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Mon, 12 Aug 2024 11:35: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** - Improved drag-and-drop functionality for list widgets. - **Bug Fixes** - Enhanced clarity and organization of test cases for better logical flow. - **Chores** - Simplified widget ID generation across several components, improving consistency in the application. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
42debc6d11
|
chore: rename ADS package (#35583)
## Description Rename `design-system` package to `@appsmith/ads` ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10319507327> > Commit: 65d9664dd75b750496458a6e1652e0da858e1fc6 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10319507327&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Fri, 09 Aug 2024 13:47:50 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No |
||
|
|
b7ec5dacd8
|
chore: rename old ADS package (#35517)
## Description Rename package `design-system-old` to `@appsmith/ads-old`. ## 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/10286195096> > Commit: c0d478694b12f35b88687b6dae6f252967fba540 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10286195096&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail" target="_blank">Cypress dashboard</a>. > Tags: @tag.All > Spec: > The following are new failures, please fix them before merging the PR: <ol> > <li>cypress/e2e/Regression/ClientSide/BugTests/DatasourceSchema_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, 07 Aug 2024 15:26: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 |
||
|
|
c42e0317de
|
fix: change appsmith alias (#35349)
In order to unify package names, we decided to use `@appsmith` prefix as a marker to indicate that packages belong to our codebase and that these packages are developed internally. So that we can use this prefix, we need to rename the alias of the same name. But since `@appsmith` is currently being used as an alias for `ee` folder, we have to rename the alias as the first step. Related discussion https://theappsmith.slack.com/archives/CPG2ZTXEY/p1722516279126329 EE PR — https://github.com/appsmithorg/appsmith-ee/pull/4801 ## 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/10267368821> > Commit: 2b00af2d257e4d4304db0a80072afef7513de6be > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10267368821&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Tue, 06 Aug 2024 14:24:22 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No |
||
|
|
c0664e2c52
|
fix: Anvil zone widget default configurations (#35299)
## Description - Zone widget needs the `flexVerticalAlignment` configurations to make the layout stretch to occupy all vertical space in a section - Zone widget's layout configuration needs a `height:100%` to enable highlights in an empty zone. ## 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/10221060293> > Commit: 76b97f97b1ff6b487db00684584a97957094bcba > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10221060293&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Fri, 02 Aug 2024 20:25:54 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 `layoutStyle` property for enhanced border and height control in layout components. - Added `flexVerticalAlignment` property to improve vertical alignment flexibility in widgets, allowing for responsive design enhancements. These changes aim to provide users with greater customization options for layout and widget presentation. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e8cb460b77
|
feat: move building blocks to bottom of widget explorer (#35270)
## Description **Problem** While we don't have the configuration interface for blocks, we should make them available as we have other regular widgets, but we shouldn't promote them for new users, since they are not able to easily modify them. Remove the building blocks empty state that is creating confusion. **Solution** 1. Move the building blocks group to the bottom of the widget sidebar 2. Adjust tests to suit new demands Fixes #34964 ## Automation /ok-to-test tags="@tag.IDE, @tag.Widget, @tag.Templates" ### 🔍 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/10187244230> > Commit: e0aac0ea572e34716e8613a272c5ba0cadbd6fde > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10187244230&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.IDE, @tag.Widget, @tag.Templates` > Spec: > <hr>Wed, 31 Jul 2024 21:39:07 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Simplified the onboarding component to display static content instead of dynamic behavior based on application state. - **Bug Fixes** - Updated test cases for the onboarding component to ensure it does not render in preview mode, enhancing accuracy in expected behavior. - Revised tests to reflect changes in the visibility of the suggested widgets based on feature flag settings. - **Chores** - Minor reorganization of import statements and constants for clarity without affecting functionality. - Streamlined the visibility logic of suggested widgets by removing unnecessary feature flag dependencies. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
a2bfe450b6
|
chore: enable no-explicit-any rule (#35321)
## Description - Enabled the rule `@typescript-eslint/no-explicit-any` - Suppressed errors with comment ``` // TODO: Fix this the next time the file is edited // eslint-disable-next-line @typescript-eslint/no-explicit-any ``` Fixes #35308 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10181176984> > Commit: 7fc604e24fa234da7ab2ff56e0b1c715268796ee > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10181176984&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Wed, 31 Jul 2024 15:00:45 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No |
||
|
|
de443104f2
|
chore: rm dr ce (#34765)
Co-authored-by: brayn003 <rudra@appsmith.com> |
||
|
|
86bc401013
|
feat: set app max width (#35087)
## Description Add a new application setting which would allow users to set max width of their applications. Fixes #34993 ## 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/10159296604> > Commit: d2a98dcaecda2903dd8233f1f53ea119721095fa > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10159296604&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Tue, 30 Jul 2024 09:50:48 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Introduced a new constant for application maximum width settings, allowing for `Unlimited`, `Large`, and `Medium` options. - Added an `AppMaxWidthSelect` component for users to select maximum width configurations from a dropdown menu. - Enhanced `Canvas` and `MainContainerWrapper` components to accept and utilize maximum width settings for improved layout adaptability. - Implemented a new selector to retrieve the maximum width setting for use in various components. - Enhanced the theme property pane to allow users to customize the application layout through maximum width selection. - Updated `CanvasFactory` to utilize the application theme settings for a more responsive layout. - **Bug Fixes** - Improved initialization logic to prevent null reference issues related to theme settings. - **Tests** - Enhanced test cases to verify inclusion of maximum width settings in exported applications and during application imports. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> |
||
|
|
1668b04d43
|
chore: add widget id prefix (#35221)
## Description Add widget type to id in order to simplify debugging. For example `3jgf4p6owp` => `section-3jgf4p6owp` ## 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/10158529399> > Commit: 053f81ff4f5a92120b2b289ccb18125eb04380d8 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10158529399&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Tue, 30 Jul 2024 08:58:49 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced organization of widgets with unique prefixes for `widgetId` generation, allowing for better identification of section and zone widgets. - Improved logic in the WidgetCard for differentiating widget types through structured `widgetId` prefixes. - **Bug Fixes** - Addressed issues related to widget ID uniqueness, ensuring consistent and organized widget management within the application. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
752582c160
|
perf: optimize canvas resizing for fixed layout (#35257)
## Description In this PR canvas resizing hook was refactored, many unnecessary effects were removed leaving the bare minimum. Fixes #34741 ## 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/10155774784> > Commit: 1900e8b429151d160e20712b6aca962f3a0e33ec > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10155774784&attempt=2" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Tue, 30 Jul 2024 05:37:38 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 constant for resize debouncing to optimize UI performance. - Added a custom hook to automatically resize canvas elements based on container dimensions. - **Enhancements** - Improved responsiveness of the app layout with better width management for canvas elements. - Enhanced structure and readability of components through destructuring props. - **Bug Fixes** - Updated logic in the main canvas reducer to prevent unnecessary state updates after initialization. - **Tests** - Updated tests to reflect changes in hooks focusing on canvas width auto-resizing. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
58f0c0d190
|
chore: Remove unnecessary properties from being stored in Anvil DSLs (#35088)
## Description - Multiple functions from `widgetAdditionSaga` have been removed from the flow when adding new Anvil widgets to Canvas - The removed functions have alternatives specific to Anvil ##Tasks - [x] Move functions and cut down code run during Anvil widget addition flow - [x] Cleanup code Fixes #34896 ## Automation /ok-to-test tags="@tag.All" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/10099580771> > Commit: 50d9f0349f172ebd5cd5695a4345225ac565379c > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10099580771&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.All` > Spec: > <hr>Thu, 25 Jul 2024 19:31:29 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new property to manage default widget properties for improved widget addition efficiency. - Enhanced the application’s capability to manage and display layout information dynamically for the main canvas. - Added new saga functions to facilitate the addition of widgets to the Anvil canvas, improving user interaction with suggested widgets. - **Bug Fixes** - Streamlined widget addition logic for better performance and maintainability in the Anvil canvas. - **Refactor** - Simplified and reorganized the saga functions related to widget addition, improving clarity and efficiency. - Replaced legacy functions with updated methods for handling widget properties and state management. - **Documentation** - Improved comments and descriptions in the code to clarify the new logic and functionality changes. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
ddc2304e77
|
fix: revert "fix: canvas resizing issues" (#35129)
## Description
This reverts commit
|
||
|
|
cbe1f5821d
|
fix: canvas resizing issues (#35004)
## Description Fixes canvas resizing issue and introduces performance improvements. Fixes #34741 ## 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/9976888930> > Commit: 89ccd69466efaf6ea6a55c2b3b3fb20175024dbd > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9976888930&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.IDE` > Spec: > <hr>Wed, 17 Jul 2024 15:42:40 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 auto-resize functionality for canvas elements based on container width. - Added debouncing for resize events to improve performance. - **Refactor** - Reorganized imports and constants for better modularity and maintainability. - Updated component and hook references to use new `useCanvasWidthAutoResize`. - **Tests** - Added tests for canvas width resolution logic to ensure correct behavior across different layout types. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
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 -->
|
||
|
|
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 --> |
||
|
|
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 --> |
||
|
|
ed497dbe9c
|
chore: add tests for anvil modal. (#34347)
[](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=9GEnyEC) ## 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 #33740 _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.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/9643638292> > Commit: bcc4bbddaa50b0be16e41a3a51db4f6abe732e79 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9643638292&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** - Introduced test cases for Anvil modals, covering interactions like opening, closing, drag and drop operations, and handling modal functions. - **Bug Fixes** - Enhanced testing capabilities with `data-testid` attributes for better identification and testing of components, particularly in detached widget drop areas. - **Refactor** - Updated the `Modal` component to use `dataAttributes` instead of `size` prop to streamline attribute handling. - Dynamic generation of modal class names based on properties for better styling and consistency. - **Style** - Adjusted styling for SVG elements within the `EntityExplorer` component, specifically modifying the height and width properties. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local> |
||
|
|
0a2ca2c38c
|
feat: Anvil dnd sagas unit tests (#34407)
[](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=Pmk6xa9) ## 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 #33981 _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.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/9639877981> > Commit: 311f59c5d6cff265ea985c13f9891193866304d6 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9639877981&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 - **Tests** - Introduced test cases for adding and moving widgets within a canvas layout. - **New Features** - Added functionality to generate mock data for a layout with two sections, each containing a zone widget. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
138fc6a148
|
feat: side-by-side edit mode hover analytics (#34185)
## Description The purpose of this PR is to collect data about hovered canvas and widgets and send it to analytics platform. Fixes #33159 ## 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/9584384829> > Commit: 9cec247f7f1e82e0cc23fa5aa5499008bdc58964 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9584384829&attempt=1" 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 - **New Features** - Introduced analytics tracking for side-by-side hover actions in the IDE canvas. - Added a new `AnalyticsWrapper` component for handling analytics events within layout systems. - Implemented a custom hook `useIsInSideBySideEditor` to check for side-by-side editor mode. - Added new CSS styles for layout systems. - **Bug Fixes** - Improved handling of widget hover events and analytics tracking in side-by-side editor mode. - **Refactor** - Refactored logic for determining the current entity info and segment state in the IDE. - Updated import paths and reordered imports for better organization. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
cdee74e93b
|
chore: Split JS collection update api call to override for modules (#34009)
## Description The API call is moved to a saga called `updateJSCollectionAPICall` whose role is to identify whom this JS collection belongs to `Page` / `Module` / `Workflow` and then call the correct API. In the context of CE, it just calls the existing `updateJSCollection` but in EE this saga (`updateJSCollectionAPICall`) is extended and does the checking mentioned above. For more info on extension check the [EE PR](https://github.com/appsmithorg/appsmith-ee/pull/4356) Fixes https://github.com/appsmithorg/appsmith/issues/34008 ## 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/9465185887> > Commit: 5e0214b97de20cf1b9042717fdb578f872c2c7d3 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9465185887&attempt=1" target="_blank">Click here!</a> <!-- 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 test cases for the `updateJSCollectionAPICall` function. - Updated `pageId` constant in `pasteSagas.test.ts` for improved readability and consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com> |
||
|
|
989cd8ed67
|
chore: Unify ID extraction regex from browser url (#33925)
## Description Regex update to make it compatible to extract identifiers for both Mongo ObjectIds and UUIDs. This will help us to keep the unified logic required in `pg` branch. ## Automation /ok-to-test tags="@tag.Datasource, @tag.GenerateCRUD, @tag.ImportExport, @tag.Fork, @tag.Workspace, @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/9405554200> > Commit: 3959703aab1d10e28d3b80057793476467126929 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9405554200&attempt=2" target="_blank">Click here!</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** - Enhanced URL path handling to support both UUID and Mongo ObjectIds. - **Refactor** - Replaced hardcoded page IDs with dynamic variables across multiple test files for improved maintainability and flexibility. - **Tests** - Updated test cases to use dynamic page IDs, ensuring consistency and easier updates in the future. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
5a6bb4e48b
|
chore: exclude button from tab order (#34099)
## Description Removed the option to select the tab button in edit mode. This is the first PR. There will be separate PRs for each widget. ## 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/9445961677> > Commit: ccba28bd2b17a7afdc27fb59371f7e72bd370169 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9445961677&attempt=1" target="_blank">Click here!</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** - Introduced `isEditMode` getter in widgets to enhance edit mode detection. - **Improvements** - Updated button component properties for better consistency and usability. - Enhanced widget interaction logic for more accurate behavior in different modes. - **Removed** - Eliminated unnecessary `minWidth`, `maxWidth`, and `minHeight` properties from button components. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
068847d4e9
|
fix: vanishing widgets in protected branches (#34129)
## Description Fixing vanishing widgets in protected branches Fixes https://github.com/appsmithorg/appsmith/issues/34128 ## 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/9448976837> > Commit: b45f21e9573c872c809b4f509d735988cbfcfae7 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9448976837&attempt=1" target="_blank">Click here!</a> <!-- 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 logic by removing unnecessary checks for protected mode. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
99fa93d61e
|
chore: Adding specs/tests for space distribution and copy paste sagas (#34063)
[](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=mFGYFxI) ## Description - Adding additional specs for space distribution and section deletion. - Adding unit tests for anvil pasting. Fixes #33739 _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.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/9443154667> > Commit: 4a770670aaf2f00d175066b597680345d840cd60 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9443154667&attempt=1" target="_blank">Click here!</a> <!-- 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 new test cases for verifying section removal and visual aspects of background-less zones in the Anvil layout system. - Introduced methods to handle mouse events for space distribution within sections. - Added mock data generation functionality for widgets, sections, zones, and layouts. - **Tests** - Implemented tests for paste operations in the Anvil layout system, including various mock functions and scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
05aa9cc354
|
fix: widget overflow behaviour in anvil (#33961)
## Description Fixed overflow operation for widgets in zones. Fixes #32922 #33537 ## 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/9386697113> > Commit: e0f8f24f3dd34ec39acb10846d35d0c2f020ca02 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9386697113&attempt=1" target="_blank">Click here!</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** - Introduced dynamic font size customization using CSS custom properties. - **Improvements** - Adjusted layout behavior for `AnvilFlexComponent` to use `fit-content` for better content fitting. - Enhanced styling for elements with elevation property, including font size and spacing adjustments. - Switched to `isEditOnlyModeSelector` for more accurate layout wrapping behavior in `SectionRow`. - **Removals** - Removed `renderMode` property from `BaseLayoutComponent`, `FlexLayoutProps`, and related components for streamlined functionality. - Simplified imports and prop handling in `AlignedWidgetRowComp`. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
2d40060e58
|
fix: preview mode canvas cutoff (#33960)
## Description Fix canvas and resizer height with and without navigation. Fixes #32301 ## 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/9381694039> > Commit: 5c630f59f3f6b8787ade1a9fe14619f1750f2d92 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9381694039&attempt=1" target="_blank">Click here!</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 - **Enhancements** - Improved layout responsiveness by using `navigationHeight` for dynamic styling in preview mode. - Simplified height calculations in the editor by replacing `headerHeight` with `navigationHeight`. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
9cd1be5014
|
fix: add isPreviewMode check for showing bb onboarding (#33956)
## Description Building blocks onboarding banner was showing to users while in preview mode. This PR checks for isPreviewMode and sets the building blocks onboarding to hide when in preview mode. Fixes #33954 ## 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/9364855811> > Commit: e7c0ee51484adbe1e73d3941dc7e99469ae7fdc3 > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9364855811&attempt=1" target="_blank">Click here!</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** - Onboarding component now respects the preview mode setting, ensuring it does not render when in preview mode. - **Tests** - Added test cases to verify that the onboarding component does not render in preview mode for both "Non-AirGap Edition" and "AirGap Edition". <!-- end of auto-generated comment: release notes by coderabbit.ai --> |