## Description
I noticed that some changes were not being detected, and I made the
snapshot checks more strict. Now we will notice the absence of the icon.

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.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/10064554043>
> Commit: 32260d60f26bcc9c839680dd5caf4ece1d2026f7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10064554043&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 23 Jul 2024 19:11:18 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
Fix text wrapping into paragraph and heading widgets
## 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/10047055173>
> Commit: d0f7b27b1f329f3293ea20dc548f076e967874b4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10047055173&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 22 Jul 2024 19:49:10 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 `wordBreak` property to the text component for
improved control over text wrapping and overflow.
- Enhanced the `WDSParagraphWidget` to utilize the new `wordBreak`
property, improving text layout and readability.
- **Bug Fixes**
- Corrected a typo in documentation for the `TextProps` interface to
enhance clarity.
- **Style**
- Modified CSS styles affecting text overflow behavior, enabling better
customization and responsive design.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced theme setting and snapshot verification for various widgets
in different modes (Canvas, Preview, Deploy).
- Added a new CSS rule to enhance the styling of input elements based on
specific conditions.
- **Refactor**
- Renamed existing snapshot verification methods to more descriptive
names across multiple widget snapshot files.
- Added methods to handle theme settings and detailed snapshot matching.
- **Tests**
- Enhanced testing functionality for widgets with updated methods for
snapshot verification across different themes.
These updates ensure more detailed and theme-specific snapshot testing
for various widget states, improving test coverage and accuracy, as well
as enhancing the layout consistency of input elements.
<!-- 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/10046186626>
> Commit: a6232ae795f77bd46bff4c854f46c5671a518ff6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10046186626&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 22 Jul 2024 18:43:52 UTC
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: Valera Melnikov <valera@appsmith.com>
## 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>
/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/9678081244>
> Commit: d73f2d7f37c9d62ba1ca622b78d9a0ce4d0e3db8
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9678081244&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- 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 comprehensive test cases for Currency Input, Phone Input,
and General Input Widgets in the Anvil editor covering Canvas, Preview,
and Deploy modes.
- Added complex layout structures for Currency and Phone Input Widgets
in the "MainContainer" canvas widget.
- **Enhancements**
- Implemented debouncing for validation status and error message
handling in the Currency Input Widget to improve timing accuracy.
- Added `defaultValue` property to Currency Input Widget configurations.
- Corrected typos and improved clarity in widget property names and
validation logic.
- **Bug Fixes**
- Fixed validation status typo in Phone Input Widget.
- **Refactor**
- Reordered static property declarations in Input Widgets for better
code organization.
- Modified method access controls in AnvilSnapshot for external usage.
- **Tests**
- Added snapshot testing for Currency, Phone, and General Input Widgets
within the Anvil editor.
- **Chores**
- Added a new method `Createpage(pageName: string)` to streamline page
creation in tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
[](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>
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced test cases for Anvil Button Widgets, including Canvas,
Preview, and Deploy modes.
- **Bug Fixes**
- Updated CSS and HTML selectors for better element targeting and
testing reliability.
- **Style**
- Improved styling logic for buttons in the InlineButtons component.
- **Chores**
- Added `data-testid` attributes for better test targeting.
- Refactored code for string concatenations and URL constructions in
DeployModeHelper.
<!-- 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/9597157402>
> Commit: c551705fe01aace94962fcc7fa91dff253136721
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9597157402&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
<!-- end of auto-generated comment: Cypress test results -->
---------
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Enabling visual tests:
RCA:
Whenver there is change in UI , we need recapture the screenshots for
each of the tests as mentioned within the spec.
In this exercise we have updated the screenshot for all the visual
tests.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Updated visual test specifications in Cypress for enhanced accuracy.
- Introduced a script to uninstall Node.js from Unix-based systems.
- **Bug Fixes**
- Adjusted login page validation to reflect updated text expectations in
visual tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Maps"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8231075012>
> Commit: `07f432e3206c6b370265078607b285e94eb0aacd`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8231075012&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Updated MapChart widget test cases, including selector changes and
modified assertions.
- **New Features**
- Enhanced the MapChart Widget to render charts using SVG for improved
performance and quality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
for old pages that were created before the new url style, the page
settings has a prompt to ask the user to change the URL.
The line in this prompt is broken

This PR changes this line to:

For testing, you can get an example old app from
[here](https://theappsmith.slack.com/archives/C02JT9CSE6L/p1707204475068809?thread_ts=1706698534.445299&cid=C02JT9CSE6L)
#### PR fixes following issue(s)
Fixes#30922
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
## Testing
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Updated the wording of messages related to setting page URLs for
enhanced clarity and consistency.
- Changed test tags from `@tag.Settings` to `@tag.Visual` for improved
test categorization.
- Modified JSEditor indentation visual tests to include additional test
cases and adjustments in test descriptions.
- Updated test tags from `@tag.JS` to `@tag.Visual` for consistency in
test categorization.
- Added `@tag.Visual` to the list of tags for test categorization.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
This PR removes the feature flag for ECharts. ECharts feature needs to
enabled by default and doesn't need to be behind a feature flag anymore.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced the Chart Widget by integrating Custom ECharts as a standard
option.
- **Bug Fixes**
- Addressed the Chart Widget selection issue by marking the deprecated
chart type accordingly.
- **Refactor**
- Streamlined Chart Widget properties and configuration for better
usability.
- Improved database query performance with new indexes.
- **Tests**
- Updated end-to-end tests to align with the Chart Widget changes.
- **Chores**
- Removed obsolete feature flags related to charting functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Updates the Cypress testing suite to handle the new app sidebar as a new
way to navigation
This change will enable the sidebar feature flag by default for all tests so that all new changes keep the sidebar in mind.
fixes: #28388
---------
Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com>
## Description
- Map Chart Automation
#### PR fixes following issue(s)
- Added tests for Map Chart Widget
#### Type of change
- Cypress
## Testing
>
#### How Has This Been Tested?
- [x] Cypress
>
>
## Checklist:
#### QA activity:
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
## Description
- Map widget automation
#### Type of change
- Added spec to verify the map widget with all the possible settings
- Updated the workflows to include map widget spec for hosted runs and
not run for normal runs
## Testing
>
#### How Has This Been Tested?
- [x] Cypress
>
>
## Checklist:
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
---------
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Adds a setting for Admin Users to enable Email verification of users who
are signing up using "Form login" When enabled, it will send a
verification email to a user who is signing up on a tenant and only when
they verify (by clicking on the link in email) they will be allowed to
proceed to the rest of the sign up process.
Corresponding EE PR for the email template:
https://github.com/appsmithorg/appsmith-ee/pull/2153
#### PR fixes following issue(s)
Fixes#21387Fixes#25552
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update
## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [x] Jest
- [x] Cypress
We have mocked server apis to respond with different states and tested
the ui on that change
#### Test Plan
https://github.com/appsmithorg/TestSmith/issues/2459
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [x] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
---------
Co-authored-by: nilansh <nilansh@appsmith.com>
## Description
Fixes auto indent on save in field that contains JS objects
#### PR fixes following issue(s)
Fixes#25325
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
- Bug fix (non-breaking change which fixes an issue)
>
>
## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [x] Cypress
>
>
#### Test Plan
1. Verified query and api parameter for indentation after command +S
2. Verified code editor for object and array indentation and cmd+s
3. Verified chrome and firefox browser for cmd+s
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [x] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
## Description
- Automated Camera (Image & Video) & Code scanner widget testcases
## Type of change
- Automation
## How Has This Been Tested?
- Cypress test runs
## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
---------
Co-authored-by: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Adds code commenting in JS objects code editor and JS fields. Users can
use `Cmd + /` on Mac and `Ctrl + /` on other systems to
comment/uncomment code now.
Fixes#9369
## Type of change
- New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
- Manual
- Jest
### Test Plan
- [x] https://github.com/appsmithorg/TestSmith/issues/2120
- [x] https://github.com/appsmithorg/TestSmith/issues/2121
- [x] https://github.com/appsmithorg/TestSmith/issues/2122
### Issues raised during DP testing
- [ ]
https://github.com/appsmithorg/appsmith/pull/18667#issuecomment-1348354145
## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* removed block and added flex consistent in the alignment case of left and right
* fixed radio group which broke because of display block
* default enabled auto height for every widget
* added reivew changes
* reverted the switch group style changes and added the check for Text widget background in the AutoHeightContainer
* changed the scroll helper text for containers
* reverted the default enable for all the widgets
* test: fixed DH flaky test (#18415)
fixed DH flaky test
* fix: auto height container computations (#18408)
* Fix auto height container computations
* fix: Invisible Widgets Overlap while switching back and forth between edit and preview modes in rare cases (#18398)
sort Space based on original position if dynamic positions are equal while generating tree
* fix: group widgets label alignment. (#18360)
* fix: group widgets label alignment.
* fix: switch and radio fix transform styles for auto height.
* feat: disable auto height limits for modal (#18386)
* added multi select back
* (WIP): Complete the dynamc height update logic
* (WIP): Dynamic height logic
* (WIP): Container computation logic, Next steps: Prevent reflow when resize is disabled. Fix logic of widgets randomly changing positions (Debug)
* Fix logic in container computations
* Integrate for PoC
* fixed the no initial load dynamic height updates
* Stop vertical resize and reflow when dynamic height is enabled for a widget
* added another container in text widget
* enabled dynamic height for container widgets
* removed dynamic height feature from list widget
* Fixed Button and Input components height increase
* added an experiment to overflow the content if maxHEight is less
* removed the ref of Textwidget by mistake, added it back
* fixed text widget height overflow problem with a little hack
* added long labels with text
* fixed the table scroll issue
* overflow fixed for json form widget
* added extra 8px height for Switch, Rating and Checkbox Height
* (WIP): Resolve issues
* (WIP): Fix widget padding issue
* added overflow container for Radio and Switch group widgets
* (WIP): Have modals work with dynamic height
* added the overlay and the handles
* added dragging behavior to the dots
* fixed the overlapping with the selection tool
* (WIP): Fix issues reported
* now we can update the property pane values back from overlay handles
* now we can update the property pane values back from overlay handles
* (WIP): Fix table widget
* Fix package.json
* Remove unit tests temporarily
* Fix unit test
* (WIP): Fix modal resize. Fix cursors. Fix border issue on non-resizable widgets
* fetch component heights using the requestAnimationFrame callback
* behavioural changes
* (WIP): Fix issues on the platform
* Update main container size appropriately
* more behavioural changes
* overlay now only be visible when hovering over the dots
* grid showing and widget reselecting
* added onfocus and onblur events to property pane listeners
* added onfocus and onblur events to property pane listeners
* added a range slider for min and max
* added demarcations for slider values
* (WIP): Fix platform workflows for dynamic height
* Fix issues with widgets
* Fix removed import
* - Add missing cypress files
* set the limits
* limit increase on change
* Fix z-index of min max limit indicators. Fix unused-vars warnings
* Fix Table Widget and Text Widget issues
* Fix: all the bugs in the bug master list for DH (#16268)
* changed the zindex for the signifiers
* showing signifiers only when the widget is selected
* made changes suggested by Momcilo
* activate the dots when the fields are active
* created a new centered dot handle
* removed overlays on focus and made the border more like deisgn
* handles on top of other widgets
* hide the overlay when multiple widgets are selected
* added a white border
* added a white border
* bug #15509 resolved
* changed the minDynamicHeightLimit to 2 instead of 4 to fix the Bug #15527
* removed the height auto fix from BaseInputComponent to fix the Bug #15388
* removed the condition to not ccalculate dynamic height when the row difference is less than 2 to fix the bug 15353
* made fixes for the bug #16307
* made fixes for the bug #16308
* made fixes for bug 16310
* made fixes for the bug #16402
* removed some log statements
* made fixes for the bug #16407
* fixed label problem found in the issue #16543
* made fixes for the issue #16547
* made fixes for the bug #16492
* redeploy
* (WIP): Fix to make this branch functional
* imported LabelWithTooltip back from design system
* signifier is now centered
* filled the signifier with primary color
* overlay hidden while dragging
* made the signifier dashed border also draggable
* Fix issue #16590 (#16798)
* set the limits to 4 rows
* replaced the static 40 value
* added signifiers for modal widget
* added signifiers for modal widget
* tried solving the scroll issue for widgets when there are limits
* solved the height problem using ResizeObserver
* (WIP): Fix maxDynamicHeight issue with container widgets:
* made the changes as per the review
* fixed the issue for input widget when label gets out of border
* hide text widget overflow options if auto height is enabled
* (WIP): In view mode, invisible widgets now donot take space (#16920)
* (WIP): In view mode, invisible widgets now donot take space
* (WIP): Enable the feature where invisible widgets in view mode don't take space to all widgets irrespective of the dynamic height feature
* Remove Replay conditional
* removed the scroll container for container type widgets
* removed the scroll container for container type widgets
* updated the hook to set overflow none for text widget
* fixed the should dynamic height logic to respect the min height limit
* Modal widget adheres to dynamic height (#16995)
* Modal widget adheres to dynamic height
* WIP: POC: fix dynamic height issues (#16996)
Fix height less than 4 issue. Fix JSONForm adherence to min and max height
* POC: Dynamic height undo redo issue (#17085)
* Revert debouce timeout
* (WIP): Fix issue with undo-redo in dynamic height
* fix: Dynamic height issue fixes (#17153)
* Dynamic height issue fixes
==
- Fix issue where nested widgets did not ensure parent dynamic height updates
- Fix issue where Modal widget updates came in subsequent renders
- Fix issue where JSONForm collapses
- Fix performance issue for independent updates
* Use functions to get min and max dynamic height
* Fix issue where variable might have been undefined
* added the dynamic container into the deploy mode as well
* added overflow-x hidden when overflow-y is active in the dynamic height container
* fix: Dynamic height Issue fixes (#17204)
Fix preview mode invisible widgets. Fix Tabs widget dynamic height.
* removed a console.log statement
* removed the slider control file
* imported the LabelWithTooltip from the repo rather than ds
* word-break CSS rules added for Switch and Checkbox widget when Dynamic Height is enabled
* abstracted the check for dynamic height with limits enabled as isDynamicHeightWithLimitsEnabledForWidget
* abstracted the static value of 10 in dynamic height overlay to GridDefaults
* abstracted min and max dynamic height limits to getters
* fix: replaced all the refs for simpler widgets (#17353)
* replaced all the refs for simpler widgets
* removed the updateDynamicHeight from componentDidUpdate in BaseWidget
* added back lifecycle methods back to BaseWidget
* removed the contentRef from SwitchGroup and Table
* updating the height from the auto height with limits as well
* some hacks to make the limits work
* working solution
* used setTimeout to send an update to updateDynamicHeight from overlay update
* removed a log
* added requestanimationframe in settimeout
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* Fix issues caused during merge
* Remove unneeded derived property
* removed more unnecessary code which should have been removed after removing the ref dependency
* fixed the maxDynamicHeight issue
* Fix issue where property configs were not being sent
* fix: Auto Height Feature - add selectors for tests (#17687)
Add selectors for auto height cypress tests
* fix: removed height auto default theme (#17415)
removed height auto css rule from the default theme
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
* fix: Auto Height Feature - Resolve issues and restructure code (#17686)
* Fix issues in dynamic height. Restructure code and reduce abstraction leaks
* Fix typescript issues
* Update based on review comments. Comment migrations, as a cyclic import is causing the jest tests to fail.
* Remove unused imports
* Decrease code nesting
* added the base styles for the overlay like position and z-index in its styled component css
* used the isDynamicHeightEnabled prop to set the height of SwitchGroup and RadioGroup widgets from 32px to 100% in case of inline mode
* fix: Auto Height - Resolve issues (#17737)
* Fix Tabs Widget showTabs toggle based auto height. Revert removal of BaseWidget code. Remove box-intersect and use a bruteforce algorithm. Add base logic for having containers collapse due to hidden child widgets
* Hide scroll contents and overflow property pane controls when dynamic height is enabled
* Removed the class property expectedHeight from BaseWidget as it is not useful in the overlay logic after some changes
* fixed the left alignment issue of label in the rich text editor by adding some styles applied only when the dynamic height is enabled
* fixed the input field stretching issue in case of Dynamic height by adding some CSS styles when isDynamicHeight is true
* Fix failing modal widget cypress tests
* Fix issue with scrollContents and Tabs Widget defaulTab
* added a little bit padding of 4px to the right of scroll container of dynamic height with limit
* Add test locators for resize handles
* removed the dynamic height logic from the table widget
* fix: Auto-Height invisible widgets (#17849)
* Fix issue where invisible widgets were still taking space
* Make sure to collapse only if dynamic height is enabled
* Fix issues with reflow (not the invisible widgets)
* Fix container min height issues
* Fix reflow with original bottom and top values. Testing needed
* Fix invisible widgets
* fix: enabled dynamic height for stat box widget (#17971)
enabled dynamic height for stat box widget
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: added a min height to rich text editor so that it does not collapse (#17970)
added a min height to rich text editor so that it does not collapse
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* Fix issue with resizing auto height widget
* Add helper text to educate users regarding the scroll disconnect in WYSIWYG
* fix: Auto Height Fixes (#18111)
AUTO HEIGHT FIXES
- Fix JSONForm height discrepancy
- Fix issue where widgets moved below the other
- Fix droptarget height after parent container resize
* fix: sliced up the DynamicHeightOverlay component a little bit (#18100)
* sliced up the DynamicHeightOverlay component a little bit
* more refactoring
* more refactoring
* used release event emitter and refactored more
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: rich text editor center alignment issue (#18142)
* removed the center alignment from rich text editor
* dummy commit
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: old DSL container collapse (#18160)
* Fix issue where old containers from old DSLs used to collapse when auto height was enabled
* Fix issue where old containers don't allow new widgets to be added when auto height is enabled, this is because the shouldScrollContents is undefined
* fix: input widgets issue (#18172)
fixed the auto height not working issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: preview deploy mode (#18174)
fixed the preview and deploy mode
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits label intersection with handle dot (#18186)
fixed the position of the limits label to the right so that it will not intersect with the handle dot
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits rich text editor min height (#18187)
decrease the min height of the RTE so that it does not have the boundary issue with the max limit when auto height with limits is enabled
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: grammatical error in the help text (#18188)
changed react to reacts in the helpText of the dynamic height property in the proeprty pane
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height tabs double scroll (#18210)
solved the issue by disabling the scroll for the child canvas widget in the tabs widget
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits resizing (#18213)
* fixed the auto height limits resizing issue
* made the auto height overlay independent of isResizing and used its own property to show the grid
* some more refactoring
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* dummy commit
* fix: old apps container issue (#18255)
filtered out the widgets which are detached from layout
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: fixing auto height in childless containers. (#18263)
fixing auto height in childless containers.
* task: Dynamic height reflow fixes in Branch (#18244)
dynamic height reflow fixes
* fix: compact label issue and min and max limits numeric input (#18282)
fixed compact label issue and turned min and max limits to numeric input
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: LabelWithTooltip help icon fix
* fix: NaN and min limit for min and max (#18284)
* fixed compact label issue and turned min and max limits to numeric input
* fixed NaN and set min to be 4
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: validation issues for min max (#18286)
* fixed compact label issue and turned min and max limits to numeric input
* fixed NaN and set min to be 4
* validations start working min max
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* added a full stop to container scroll helper text
* validations start working min max
* dummy commit
* feat: stop resizing auto height widgets vertically because of Drag n Drop Reflow (#18267)
* reflow fixes
* stop resizing auto height widgets vertically because of Drag n Drop Reflow
* feat: Analytics for Dynamic height (#18279)
* Fix canvas min height issue and invisible widgets issue and remove logs and fix issue where widgets overlapped when coming back from preview mode to edit mode
* Fix issue with containers not respecting auto height and decreasing height
* Fix issue with modal widget not hugging contents, and container widgets never become visible after going invisible
* Fix issue where existing containers don't have correct min height for child canvas
* fix: canvasLevelsReducers test (#18301)
fixed the canvasLevelsReducers test
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: removed auto height min max config from widget features (#18316)
removed auto height min max config from widget features
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: Fixing Modal Height updates (#18317)
Fixing Modal Height updates
* fix: text widget background auto height (#18319)
added background color of Text widget back to the auto height container
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* test: cypress tests for auto height (#17676)
* Added tests for dynamic height
* updated tests for another usecase
* moved locators into commonfile
* updated common method
* added tests for some more widgets
* Added tests for jsonForm / Form widget
* Updated the test
* updated test for multiple text widgets
* updated test with few more usecases
* updated the dsl
* updated tests for text change
* updated tests based on new changes
* updated cypress test fixes
* fix: auto height container merge poc wrt release (#18334)
updated the poc wrt PR already merged in the release regarding the auto height container
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: renamed auto height overlay components and added some tests (#18333)
* renamed auto height overlay components and added some tests
* replaced the 10 value with GridDefaults
* avoiding event to reach drop target
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* updated tests
* Merge all code into one branch
* Fix failing AutoHeightcontainer test
* fix: Fix reflow computations which were causing widget overlap (#18300)
* Fix reflow computations which were causing widget overlap
* Fix issues with parent container height and overlapping widgets
* Remove console logs
* Revert comment
* Fix issues related to reflow of containers
* feat: Making getEffectedBoxes a Recursive function in autoHeight Reflow (#18336)
Making getEffectedBoxes a Recursive function in autoHeight Reflow
* Return null for invisible widgets from withWidgetProps
* Remove duplicate import
Co-authored-by: rahulramesha <71900764+rahulramesha@users.noreply.github.com>
* Remove missed console log
* fix: Label position gets deselected on selecting already selected option (#18298)
* fix: Label position gets deselected on selecting the already selected value
* Added migration for Currency & Phone input widgets
* simplify migration function using a utility
* combine conditions
* Increments LATEST_PAGE_VERSION
* Update DynamicHeight_Visibility_spec.js
updated a check wrt auto height
* Handling Modals for canvas size calculations
* fix: migrate label position test failing issue (#18365)
fixed migrate label postition test failing issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* removed the two unwanted imports from DSLMigrations to fix client build
* fix: Auto height zero and limits issue (#18366)
fixed the auto height zero and limits issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: Auto height regression issues (#18367)
* Fix auto height regression issues #18367
* feat: auto height migrations (#18368)
Add auto height migrations
* Increase file caching size
* Use manual array for list of auto height enabled widgets
* Fix cypress test dsl versions
* Revert changes to shouldUpdateHeightDynamically
* Update test results based on code changes
* Marginally increase the workbox file size cache
* review comment incorporated for test spec
* Update container auto height property on drop
* Disable auto height with limits for modal
Co-authored-by: Ankur Singhal <ankur@appsmith.com>
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Abhinav Jha <zatanna@Abhinavs-iMac.lan>
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: rahulramesha <71900764+rahulramesha@users.noreply.github.com>
Co-authored-by: Albin <albin@appsmith.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: NandanAnantharamu <67676905+NandanAnantharamu@users.noreply.github.com>
Co-authored-by: Apple <nandan@thinkify.io>
* chore: Moved height property to General section (#18402)
* fix: Height property is moved to General section
* Logs an Error if section is not General
* fix: Cypress
* enabled auto height for all the widgets except json form
* removes accidentally committed files
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* disabled default auto height for input widgets and select widgets and datepicker widget
* feat: Disable auto height for widgets in List Widget (#18381)
* Remove auto height for container Inside List widget
* remove unneccessary changes
* disable feature at generalConfig instead of firstConfig
* add todo comment
* skipped the get min limit tests
* fixed AutoHeightLimitHandleDot tests
* Updated cypress tests for regression changes
* update visual tests for widget layout
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
Co-authored-by: NandanAnantharamu <67676905+NandanAnantharamu@users.noreply.github.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: rahulramesha <71900764+rahulramesha@users.noreply.github.com>
Co-authored-by: Arsalan Yaldram <arsalanyaldram0211@outlook.com>
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Abhinav Jha <zatanna@Abhinavs-iMac.lan>
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Albin <albin@appsmith.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: Apple <nandan@thinkify.io>
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
* fix: label position test failure
* update visual tests for switchgroup
* skipping postgres test
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
This pull request:
introduces a new option to the menu in the JS editor which lets users prettify/auto-indent code.
introduces a new keyboard shortcut that lets users prettify/auto-indent code
Fixes bug where pressing CMD + <- in Mac (Home in windows) shifts the cursor to the first indented column. If the cursor is present on the first indented column, the cursor shifts to the 0th column in the editor
Fixes#9268
* add layout tests for datasource
* fix omnibar_spec
* add tests for postgres and mong
* fix git import test
* fix test
* comment test until issue is fixed
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
* fix: switch group added check for inline width
* SwitchGroup inline cypress test added
* New snaps to match CI run
* Adding right images for CI run
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* updating screenshots as per new entity explorer
* commenting after hook of git_spec
* fix tests
* updating GOOGLE_SIGNUP_SETUP_DOC and GITHUB_SIGNUP_SETUP_DOC urls