Commit Graph

139 Commits

Author SHA1 Message Date
Ilia
1dc6944504
chore: upgrade Typescipt to 5.5.4 (#35314)
## Description

Fixes #35296

## 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/10182307436>
> Commit: 8b0aa1a644769cd28161b92a21f7426d0d94cf4f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10182307436&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 31 Jul 2024 15:48:59 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**
- Updated TypeScript dependency across multiple modules to support newer
features and improvements.
- Updated `colorjs.io` dependency in design system packages to enhance
functionality.

- **Bug Fixes**
- Enhanced type-checking and overall code quality through dependency
updates.
- Refined color values in both `LightModeTheme` and `DarkModeTheme` to
improve visual accuracy.

- **Chores**
- Improved flexibility in dependency management by allowing minor and
patch updates for TypeScript and `colorjs.io`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-31 17:49:46 +02:00
Ilia
c7a7c3fa3f
chore: upgrade typescript to 5.4 (#35181)
## Description
Upgrade Typescript from 4.9.5 to 5.4

Upgrading to 5.5 is not possible until we upgrade colors.js lib. It will
be done in separate PR
More details here
https://github.com/color-js/color.js/issues/560#issuecomment-2182819685

## 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/10163124159>
> Commit: 8d2e93f2e2913e715686ccb058d3efddd55aabc9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10163124159&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 14:11:42 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**
- Updated TypeScript dependency to the latest version (5.4), enhancing
overall functionality with potential new features and improvements.

- **Improvements**
- Enhanced type safety by refining the `isString` function, allowing
better type inference and preventing runtime errors.
- Improved comments and annotations in the `indirectEval` function for
better clarity on its usage and intent.
- Corrected typographical errors in error handling logic across multiple
controllers, improving reliability in error messaging.
- Updated export style for `IconNames` to clarify its purpose as a type,
enhancing developer experience.

- **Configuration Changes**
- Updated Jest configurations to better support ECMAScript Modules
(ESM), improving compatibility and allowing for more flexible module
handling.
- Adjusted TypeScript configuration to enhance module handling and
compatibility.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-30 16:15:48 +02:00
Valera Melnikov
351acde961
fix: add break-word rule for text widgets (#35046)
## 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 -->
2024-07-22 22:50:02 +03:00
Pawan Kumar
2e2f4419bd
chore: add tests for app theming (#34839)
/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>
2024-07-22 22:08:48 +03:00
Valera Melnikov
ae9742194a
chore: update wds icon component (#34950)
## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._


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

## Automation

/ok-to-test tags="@tag.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/9942515767>
> Commit: db1ef7c00e0caa0c433984a198d9e8059a7b609e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9942515767&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 15 Jul 2024 16:12:38 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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

## Summary by CodeRabbit

- **New Features**
- Enhanced icon library with new thematic icons and improved
accessibility features.
- Introduced a default option in dropdowns for color selection in the
property pane.
  
- **Bug Fixes**
	- Corrected naming inconsistencies in icon entries.

- **Improvements**
- Streamlined color handling for icon and text components, enhancing
visual coherence.
- Update to the icon component's logic for improved maintainability and
clarity.

- **Documentation**
- Added comments for better understanding of the handling of type errors
in the icon component's story.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-22 11:56:07 +03:00
vadim
01d5275170
fix: WDS TextArea inner spacing (#34901)
## Description

Fixes #34584
| Before | After |
|--------|--------|
|
![before](https://github.com/user-attachments/assets/b0d58e3b-006e-49cc-af7f-5c600326caed)
|
![after](https://github.com/user-attachments/assets/935590ea-2a3b-4912-a28c-16b47ba9d83c)
|

We had [a CSS
rule](f6d62e5cdc/app/client/packages/design-system/widgets/src/styles/src/text-input.module.css (L27-L30))
that was imitating CapSize behavior.

It worked okay with regular input but had no effect on TextArea. Fixing
it to work for TextArea did not seem possible no matter what CSS rules
or additional markup I threw at it:
<details><summary>Dev tools screenshots</summary>
<p>
<table>
<tr>
<td>
<img width="1252" alt="Screenshot 2024-07-12 at 10 32 30"
src="https://github.com/user-attachments/assets/c529f8b9-b129-4358-88e1-cee59a0797a6">
</td>
<td>
<img width="1270" alt="Screenshot 2024-07-12 at 10 32 40"
src="https://github.com/user-attachments/assets/52cc122e-cc0b-4e18-84d5-006b5ed56ef1">
</td>
</tr>
</table>
</p>
</details>

Changing the inner spacing and removing that rule achieves the desired
results: elements are neatly aligned with similar/equal paddings. See
the example with additional elements alongside TextInput and TextArea
that verifies that vertical alignment is consistent:

![after-extras](https://github.com/user-attachments/assets/8fa7e867-22a8-4790-a0fc-daf76ccd5dbc)

## 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/9906310028>
> Commit: 0c83d24dd5247ac962f2b73baefb734471e1c3b0
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9906310028&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Fri, 12 Jul 2024 10:43:05 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

- **Style**
- Updated vertical padding for text input fields to improve spacing and
visual clarity.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-22 11:15:17 +03:00
Valera Melnikov
08c3ea9b94
chore: cypress snapshot types (#34722)
## Description
1. Add scripts for local e2e testing in the docker container. 
2. Add types for cypress-image-snapshot

In this PR, I also added the following PRS as they affect screenshot
tests as well. I did this to speed up the process and unblock the team.

#34528
#34546
#34676
#34729
#34638
#34639
#34511

To run E2E tests locally in docker, you need to do the following:
1. Run FE locally and prepare the tests for local launch. See the
instructions
[here](https://github.com/appsmithorg/appsmith/blob/release/contributions/ClientSetup.md).
2. Run `yarn cypress:snapshot:docker:build` — this will create a docker
container with the necessary environment.
3. Run `yarn cypress:snapshot:docker
"./cypress/e2e/Regression/ClientSide/Anvil/Widgets/*_spec.ts"
updateSnapshots=false`. Here we can use the path to a specific file, or
set `updateSnapshots=true` flag to update the screenshots.

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9844579277>
> Commit: 75f26599b149f831051fbd631aaa059084b226dd
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9844579277&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Mon, 08 Jul 2024 18:37:36 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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

- **New Features**
- Added support for image snapshot testing with the
`@types/cypress-image-snapshot` dependency.

- **Refactor**
- Updated test specifications by removing unnecessary
`triggerInputInvalidState()` calls.
- Reorganized and improved efficiency of image snapshot methods for
various devices.

- **Chores**
- Updated `Dockerfile` to configure the Cypress environment with
specific versions for dependencies.
  - Changed import paths in `e2e.js` for better module resolution. 

- **Style**
  - Fixed a comment typo in Cypress plugin configuration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: unknown <vadim@appsmith.com>
2024-07-09 12:06:59 +03:00
Ashok Kumar M
ed497dbe9c
chore: add tests for anvil modal. (#34347)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX1n8wGoml2WVG4C2fL4hX6Z1rh6k4aeSvE%2Fcollaboration.svg%3FcacheSeconds%3D60)](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>
2024-06-24 16:28:34 +05:30
Pawan Kumar
e01b34ec5d
chore: tests for wds button widget (#34242)
/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>
2024-06-20 18:30:16 +05:30
Valera Melnikov
62fad08bf7
chore: add excludeFromTabOrder for wds widgets (#34361)
## Description
- Add excludeFromTabOrder for WDS widgets
- WDS Table refactoring

Fixes #32369   

## 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/9596169254>
> Commit: 25d5ef47520266d904c3c545940ad6009e7b2a8f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9596169254&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
- [x] No


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

- **New Features**
- Introduced the ability to exclude toolbar buttons from the tab order
for improved accessibility and user experience. This can be controlled
via the `excludeFromTabOrder` property.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-20 15:51:59 +03:00
Valera Melnikov
36372468c5
chore: remove headless radio and use react-aria component instead (#34312)
## Description

- Remove headless radio and use react-aria component instead
- Create ErrorMessage component

Fixes #27677 

## 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/9567388261>
> Commit: 62d1153caa8bf03d827f88593c9dfaf3121091ee
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9567388261&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
- [x] No


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

- **New Features**
- Added `ErrorMessage` component for displaying error messages with
specific styling.
- Introduced `isDisabled` prop for `Label` and `ToggleGroup` components.
- Updated `RadioGroup` to accept an items array for easier
configuration.

- **Bug Fixes**
- Improved conditional rendering in `Label` component to prevent issues
when `text` and `contextualHelp` are both falsy.

- **Refactor**
  - Removed `Radio` component export from design system.
- Restructured import statements and prop declarations for `Checkbox`
and `RadioGroup`.

- **Style**
- Updated styles for `RadioGroup` and `ToggleGroup` components for
better state handling (disabled, hovered, selected).

- **Documentation**
- Updated Storybook stories for `RadioGroup` to reflect changes in
component usage.

- **Tests**
  - Adjusted `RadioGroup.test.tsx` to test new items array prop.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-19 11:08:42 +03:00
Valera Melnikov
84f67fe0f2
chore: remove headless checkbox and switch use react-aria component instead (#34217)
## Description
- Remove headless checkbox and switch use react-aria component instead
- Add Label component
- Now `ToggleGroup` is used instead of `SwitchGroup` and
`CheckboxGroup`, since they are essentially the same component.

**I'll create another one PR to refactor the radioGroup.**

Fixes #27677 

## 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/9485370398>
> Commit: f2557233978da533b9ab856335a8191b4226dba5
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9485370398&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 `ToggleGroup` component with various features for improved
user interaction.

- **Enhancements**
- Updated `Radio`, `Checkbox`, and `Switch` components for better
functionality and styling alignment.
- Added `labelPosition` options to `Radio` and `Checkbox` components for
flexible label positioning.
- Enhanced `ContextualHelp` component with a new `slot` prop for more
customization.
- Improved `Select` component to use `Label` directly, optimizing
rendering.

- **Bug Fixes**
- Adjusted logic for `WDSSwitchWidget` to ensure correct validity
handling.

- **Styling**
- Various styling adjustments across multiple components for consistent
design.

- **Tests**
- Updated test cases for the `Checkbox` component to reflect recent
changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-14 15:25:34 +03:00
vadim
dae657e3e4
chore: WDS, adjust inner spacing of buttons with icons (#34210)
## Description

When an icon is present reduce leading/trailing inner spacing.

| Before | After |
|--------|--------|
|
![before-regular-regular](https://github.com/appsmithorg/appsmith/assets/80973/0dcdc792-05d2-48c2-a67e-1044d0fef124)
|
![after-regular-regular](https://github.com/appsmithorg/appsmith/assets/80973/8569316f-d604-4397-a87e-daf2d0dabfc3)
|

Fixes #33917   

## 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/9481602526>
> Commit: 038d756b2f36020a9f9ed95bd2d681a91fb9f03d
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9481602526&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

- **Style**
- Adjusted padding styles for Button component to improve alignment
based on icon position (start/end) and size (small/medium).
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-13 15:21:45 +03:00
Valera Melnikov
7b32f1aa50
fix: improve link behaviour (#34043)
## Description
Add hover and focus for WDS link component.


https://github.com/appsmithorg/appsmith/assets/11555074/51e50841-b347-4585-aa5a-2fd54e13cf06


## 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/9401315193>
> Commit: 1a10e18ab16d30be828eeb931a2d5c22448fa096
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9401315193&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

- **Style**
- Improved the appearance of links with new CSS properties, enhancing
hover and focus states for better user experience.
- **Refactor**
- Reordered JSX elements within the Link component for cleaner and more
maintainable code structure.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-07 11:06:43 +03:00
Abhinav Jha
218dbef6e8
feat: Anvil: Add closeOnSubmit property to modal widgets (#33801)
## Description
- Creates a new property control for Modal widgets. `closeOnSubmit`. 
- This property (default `true`) configures if the modal must close on
the submit button click.


Fixes #33240 

## 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/9299980305>
> Commit: 59fc2957f0b4ff3c47788480b0d82adf99596265
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9299980305&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
2024-05-30 18:00:44 +05:30
Pawan Kumar
01529c4db5
chore: Checkbox widget does not show an asterisk to indicate it's a required (#33814)
Fixes #33444

/ok-to-test tags="@tag.Anvil"<!-- This is an auto-generated comment:
Cypress test results -->
> [!WARNING]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9297202278>
> Commit: 895c87c82e1b55e4d604870c89512200c408ef41
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9297202278&attempt=1"
target="_blank">Click here!</a>
> It seems like **no tests ran** 😔. We are not able to recognize it,
please check workflow <a
href="https://github.com/appsmithorg/appsmith/actions/runs/9297202278"
target="_blank">here.</a>

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-05-30 11:21:39 +03:00
Valera Melnikov
55ae8594ad
fix: refactor wds menu and related components, widgets (#33703)
## Description
1. WDS menu component has been completely refactored. WDS headless
component has been removed, we use `react-aria-components` instead. The
menu component now has the ability to use submenus and icons for items.
2. Rename components `ActionGroup` to `ToolbarButtons and `ButtonGroup`
to `InlineButtons`
3. Make API of the `ToolbarButtons`, `Menu`, `InlineButtons`, `Select`
consistent.
4. Cosmetic refactoring of `ToolbarButtons` and `InlineButtons` and
related widgets.

Fixes:
#32299
#32109

## 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/9210315418>
> Commit: b11c0029c656b4fbf61b9760d16f77564478d053
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9210315418&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

---------

Co-authored-by: Pawan Kumar <pawan@appsmith.com>
2024-05-24 15:58:45 +03:00
Pawan Kumar
feb1be5adb
chore: add alignment to toolbar button (#33541)
Fixes #32309

/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/9127236127>
> Commit: 016f9d08fbdd87d6ff355d45e239f015d9401612
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9127236127&attempt=1"
target="_blank">Click here!</a>

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-05-17 14:42:51 +03:00
Ashok Kumar M
bb75941c0c
fix: Modal Accessibility and copy paste. (#33509)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX14yqgk46bo7XRJuA90NLU3E993GRhVyI%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=u9xJeyE)
## Description

In this Pr we are tackling a few issues.
- disallow copy pasting modals into other widgets instead always paste
them on the main canvas.
- disable modal header and footer accessibility in edit mode.
- make sure edit mode based wrappers are not wrapped for skeleton
widget.
- make sure widget name is not shown for skeleton widget.
- fixed random errors in the withWidgetProps flow
- removed unwanted invocation of setting highlights.


Fixes #33382
Fixes #32923

_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/9125695828>
> Commit: 05d011bc23329159c4d603e31690782119e1908a
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9125695828&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
2024-05-17 15:32:22 +05:30
Pawan Kumar
9cdff0a68d
chore: WDS table widget polish (#33417)
Fixes #33389 

/ok-to-test tags="@tag.Table"<!-- This is an auto-generated comment:
Cypress test results -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9112073097>
> Commit: 89ad68289c5a3dbf9af62864b97c6595100e605f
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9112073097&attempt=1"
target="_blank">Click here!</a>

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-05-16 16:11:30 +03:00
Pawan Kumar
59153e78a8
chore: Improve Link component (#33433)
This PR uses react aria link's component in our Link component

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-05-16 15:43:35 +03:00
vadim
713eb77969
fix: Adjust WDS button font weight (#33489)
## Description
Fixes #33481 
More follow-ups may be in order, but on buttons it really stood out
(especially in dark mode, we should consider different weights for
different light modes in the future).

| Before | After |
|--------|--------|
| ![Screenshot 2024-05-15 at 16-40-23 Untitled application 1 Editor
Appsmith](https://github.com/appsmithorg/appsmith/assets/80973/bc941bf1-2e19-4ce0-a0f6-72bb9e1f0b6e)
| ![Screenshot 2024-05-15 at 16-38-32 Untitled application 1 Editor
Appsmith](https://github.com/appsmithorg/appsmith/assets/80973/7ffdea83-267b-4ba0-9d4e-3bcdb801d6e1)
|
| ![Screenshot 2024-05-15 at 16-40-09 Untitled application 1 Editor
Appsmith](https://github.com/appsmithorg/appsmith/assets/80973/eef64705-9b43-48b4-91e0-5b92af3dde11)
| ![Screenshot 2024-05-15 at 16-38-56 Untitled application 1 Editor
Appsmith](https://github.com/appsmithorg/appsmith/assets/80973/a25e0eb1-dcef-42e0-a022-ebe461f7d11e)
|

## 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/9097777062>
> Commit: 22bfd39789137204508bcc699cd9eed3abed7180
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9097777062&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
2024-05-16 11:41:24 +03:00
Pawan Kumar
d1c9bde439
chore: Refactor WDSTableWidget with basic features (#33286)
/ok-to-test tags="@tag.Widget"<!-- This is an auto-generated comment:
Cypress test results -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9056956210>
> Commit: 618ef038a5619de08d4f72cd36e4206031ac4891
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9056956210&attempt=1"
target="_blank">Click here!</a>

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-05-13 10:41:24 +05:30
Valera Melnikov
ed9c55d4c4
fix: asymmetric padding for sections and zones (#33204)
## Description
Added asymmetric paddings for sections and zones.


https://github.com/appsmithorg/appsmith/assets/11555074/1959c6f2-5e26-4fdd-98e3-ea1bb5e09dae

Fixes #32209   

## 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/8999510824>
> Commit: b714426d3185c9a75523fe98ae4ca75e26f0b249
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8999510824&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

---------

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2024-05-08 13:16:51 +03:00
Valera Melnikov
a4c4df2f2e
fix: wds components (#33146)
## Description
Fixed WDS components bugs


Fixes #
#33077
#33078
#32689
#32919

## 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/8926075231>
> Commit: 0981cf8a45151cb3dc24b938efb7d79c7fefc766
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8926075231&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
2024-05-03 12:00:25 +03:00
Valera Melnikov
4e2f74ecbf
chore: remove wds headless button (#32857)
## Description
Refactoring wds button component

## 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/8788334412>
> Commit: 3e11d5f7800eaf492cb42f049f42980ed33cd774
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8788334412&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**
- Enhanced the design system by switching the `Button` component imports
to `react-aria-components` across various components for improved
accessibility and performance.

- **Style Updates**
- Revised multiple CSS properties across components, improving visual
consistency and user interface aesthetics.

- **Refactor**
- Updated various components to use `ForwardedRef<HTMLButtonElement>`
replacing previous ref types, aligning with modern React patterns and
improving component interoperability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-23 15:00:36 +03:00
Valera Melnikov
6d90ce8dc9
chore: update storybook (#32828)
## Description
- Update Storybook and related dependencies
- Delete the stories for old widget components
- Rewrite stories for new widgets(mdx to tsx)

Note: local chromatic doesn't work because of this
https://github.com/storybookjs/storybook/issues/22531

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

- **New Features**
- Introduced new component stories across various packages to enhance
design system documentation and user experience.

- **Documentation**
- Updated `.gitignore` files to optimize version control settings for
Storybook and build logs.

- **Refactor**
- Modified UI element positioning in Storybook theming for improved
layout management.

- **Style**
- Adjusted CSS properties for the `Select` component to ensure better
visual presentation.

- **Chores**
- Updated dependencies and scripts in package configurations to maintain
up-to-date development tools.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-22 12:17:28 +03:00
Pawan Kumar
4108f770af
fix: Heading widget alignment does not follow user setting (#32759)
Fixes #32308

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

## Summary by CodeRabbit

- **New Features**
- Enhanced text styling in flex layouts to improve spacing and
alignment.
- Updated the WDSParagraphWidget to include a Flex container, enhancing
the structural layout and rendering of text elements.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-04-18 12:03:20 +03:00
Valera Melnikov
f22dffcf50
chore: wds select component (#32715)
## Description
Fixes #28466

## Automation

/ok-to-test tags=""

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

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

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

- **New Features**
- Introduced customizable `Select` component with enhanced dropdown
features including error messages, loading state, and contextual help.
- Added a new `className` prop to the `Button` component for custom
class name manipulation.

- **Enhancements**
- Updated the design system package to include exports for new
components like `Select` and `ContextualHelp`.
- Improved accessibility and cohesive user interface across components.

- **Bug Fixes**
- Corrected import paths for `ContextualHelp` in various components to
ensure consistent functionality.

- **Documentation**
  - Updated component documentation to reflect new features and props.

- **Style Updates**
- Added comprehensive styles for the new `Select` component, including
form fields and error text styling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-17 13:49:41 +03:00
vadim
1de9d15073
chore: WDS, adjusted border of text inputs to avoid "disabled" visual style (#32547)
Closes #32029
---
tl;dr
| Before | After |
|--------|--------|
|
https://github.com/appsmithorg/appsmith/assets/80973/9c4d1805-4b42-4849-ad64-ec6e471fab2f
|
https://github.com/appsmithorg/appsmith/assets/80973/236c547f-89a3-437a-a464-3da29fdd4845
|
---
Context
1. The appearance of TextInput can be mistaken as them being disabled
when there are not enough additional visual hints. See on this
screenshot of prior styling how the lack of a placeholder contributes to
that. Additionally when not lying inside a visible zone, but directly on
a canvas the contrast is very low for the field.
<img width="851" alt="Screenshot 2024-04-10 at 11 48 36"
src="https://github.com/appsmithorg/appsmith/assets/80973/69295c41-d4d2-40b0-9375-11b2d6ed532a">
2. Effect is not pronounced in the dark mode. When discriminating
between disabled and non-disabled input which one's which is also pretty
clear.
<img width="860" alt="Screenshot 2024-04-10 at 11 49 12"
src="https://github.com/appsmithorg/appsmith/assets/80973/65f9b91b-8984-4515-b5fb-fb8b74f3f492">
2024-04-11 13:01:26 +03:00
Pawan Kumar
46498aa93a
chore: Use WDS Tokens in Table Body (#32421)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
  - Enhanced typography styling with dynamic font size adjustments.
  - Introduced feature flag checks for new functionalities.
  - Implemented `VirtualTableBody` for efficient data rendering.
- Added `onClickRow` functionality in table rows for improved
interactivity.
  - Improved table accessibility with explicit cell roles.
  - Added pagination controls refinement in table headers.

- **Refactor**
- Simplified table header and body component structures for better
maintainability.
  - Streamlined feature flag usage for cleaner logic.
- Refined `WDSTableWidget` component by optimizing width calculations
and event handling.

- **Style**
  - Introduced a new CSS module for comprehensive table styling.
- Removed outdated styling configurations to align with updated design
system.

- **Bug Fixes**
  - Fixed accessibility issues by adding proper roles to table cells.

- **Chores**
- Removed unused functions and properties related to theme and styling
adjustments.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-04-05 16:05:38 +03:00
Valera Melnikov
8a835357cc
fix: input alignment (#32452)
## Description
Fixed the alignment of the content inside the input

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

- **New Features**
- Introduced `prefix` and `suffix` props for better customization in
TextInput components, replacing `startIcon` and `endIcon`.
- Added examples for using menus as prefixes/suffixes and for type
password functionality in TextInput stories.
- Implemented loading indicator functionality with priority over icons
in TextInput.
- Added support for disabled and readonly states with icon prefixes and
suffixes in TextInput.

- **Bug Fixes**
- Adjusted styles for autofill, focus states, and padding in input
fields to improve user experience.

- **Documentation**
- Updated TextInput component documentation to reflect new `prefix` and
`suffix` props usage and examples.

- **Refactor**
- Removed `startIcon` and `endIcon` properties from TextInputProps and
updated rendering logic.
- Replaced `startIcon` with `prefix` in CurrencyInputComponent and
PhoneInputComponent.
- Changed `startIcon` and `endIcon` to `prefix` and `suffix` in
InputComponent.

- **Style**
- Removed specific styling for `[data-field-input-group]` affecting
display and alignment.
- Updated text-input module CSS to enhance the appearance of prefix and
suffix elements and small-sized input fields.

- **Chores**
  - Added `MULTI_LINE_TEXT` constant to the `InputTypes` object.
- Updated the label for the "Icon" property in WDSInputWidget's
propertyPaneStyleConfig.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-05 15:02:07 +03:00
Pawan Kumar
223e4c8088
chore: WDS components in Table header (#32112)
Adds WDS components in Table Header

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

- **New Features**
- Introduced utility functions for handling table data, including
downloading and transforming data into CSV or Excel formats.
- Added a new `TableHeader` component for the `WDSTableWidget` with
features like search, actions, adding new rows, and pagination.
- **Enhancements**
- Enhanced feature flag checks for "ab_wds_enabled" and
"release_anvil_enabled" to prioritize specific flags before general
lookup.
- Updated `ActionGroup` component to include a `size` property for the
`IconButton`.
- **Refactor**
- Removed redundant imports and renamed the `searchTableData` function
to `onSearch` across multiple components to streamline search
functionality.
- Updated the `useListState` call to suppress text value warnings,
improving code quality without altering functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-04-03 15:57:39 +03:00
Pawan Kumar
2dbe72068a
fix: separator styles missing from action group menu (#32213)
This PR adds styles for separator in the action group menu

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

- **New Features**
- Enhanced menu items in the design system to support separators and
icons, improving visual organization and interaction.
- **Style**
- Updated styling for menu items with separators to improve visual
clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-29 14:29:11 +03:00
Valera Melnikov
ba6262ffe6
chore: widgets alignment (#31923)
## Description
Plenty changes related to widgets alignment 
1. Paragraph, button, inputs, single checkbox and switch widgets are
aligned along the baseline of the text content
2. The icons in the buttons and the single checkbox and switch are now
positioned absolutely so as not to affect the height of the components.
The height of the components now depends on text content.
3. All unnecessary paddings and borders in the layout have been removed:
- Canvas padding: `--outer-spacing-4`
- Gap between sections and zones: `--outer-spacing-4`
- Zone padding: `--outer-spacing-3`
- Gap between widgets: `--outer-spacing-3`
4. In widget selection styles replace `border` with `outline`, since the
`outline` one does not take space.
5. Add Changes to the flex-basis calculation method. Now the gap between
the zones is taken into account there.
6. Add a lot of small fixes related to the changes described above.


https://github.com/appsmithorg/appsmith/assets/11555074/b7c220eb-3e27-4039-9c15-6281bafe8008

Fixes #29364

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8375537665>
> Commit: `f85b63c0a49f30b9762379c2f8c3bd38c7a8355f`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8375537665&attempt=2"
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

## Summary by CodeRabbit

- **New Features**
	- Improved handling of CSS variable values in Flex components.
- Enhanced styling and layout configurations for a better user
experience.
- **Bug Fixes**
- Fixed label positioning and styling issues in Checkbox and Switch
components.
	- Adjusted padding, margin, and sizing for consistency and alignment.
- **Refactor**
- Enhanced flex layout handling and space distribution logic for
improved layout flexibility.
- **Style**
	- Updated component styles for refined user interface aesthetics.
- **Chores**
- Updated feature flags and configurations for widgets and components to
enable new functionalities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-22 16:53:29 +03:00
vadim
613547b43d
fix: WDS bdNeutralHover color (#31922)
Fixes #31899

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

## Summary by CodeRabbit

- **New Features**
- Introduced a new hover outline color for input fields to enhance user
interaction.

- **Style**
- Updated hover outline colors for both Dark and Light modes to improve
visibility and aesthetics.

- **Tests**
- Adjusted tests to reflect new color values for hover states in both
Dark and Light themes.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-21 18:20:47 +03:00
vadim
edcdcaa593
chore: WDS TextInput style (#31659)
Closes #31021

Before

https://github.com/appsmithorg/appsmith/assets/80973/3a75dc1d-c340-428c-ab7a-53820471c006

After

https://github.com/appsmithorg/appsmith/assets/80973/70249593-2705-4d67-8408-44ce301cb8ae



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

## Summary of changes

- **New Features**
- Updated text input styles to use background colors, improving user
interaction cues for hover, focus, and invalid states.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 13:06:30 +03:00
Pawan Kumar
24c1dda69a
fix: Options in WDS radio group widget get distorted in a Section with > 1 Zone (#31797)
Fixes #29365 

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

- **New Features**
- Enhanced label positioning for Checkbox, Radio, and Switch components
with "start" and "end" options.
- Introduced dynamic orientation for Checkbox and Radio groups based on
container size.
- Added new story for RadioGroup component to demonstrate vertical
orientation.
- **Style Updates**
- Updated CSS for Switch, Checkbox, and Radio components to align with
the new label positioning options.
- Improved field group styles with `flex-wrap` to accommodate various
layouts.
- **Refactor**
- Modified handling of `labelPosition` across components for consistency
and flexibility.
- Implemented `useGroupOrientation` hook for dynamic orientation
management.
- **Chores**
- Adjusted default configurations and property pane options for widgets
to align with new label positioning and orientation features.
- Added feature flag checks for specific functionalities to always
return `true`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-18 11:48:29 +03:00
Pawan Kumar
863214785a
fix: button group (#31701)
Fixes the bug in inline button group where it button don't spread out
when the widget is selected.

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


- **Refactor**
- Simplified the `ButtonGroup` component's flex basis style to always be
`"100%"`.
- Streamlined the logic in the `useButtonGroup` function by removing the
`isMeasuring` property and focusing on orientation management.
- **New Features**
- Enhanced feature flag checks to directly return `true` for
"ab_wds_enabled" and "release_anvil_enabled" flags, improving feature
management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-13 12:15:57 +03:00
Pawan Kumar
6929e7a77d
fix: focused state not working on storybook's complex form story due to z-index (#31540)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Style**
- Improved styling isolation for text input elements to enhance visual
consistency.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-06 11:54:20 +03:00
Valera Melnikov
07279c070e
fix: improved widgets layout (#31471)
## Description
- Fixed text input widget width
- Increased size of the separator for toolbarButtons
- Fixed widgets label
- Fixed behaviour for Boolean widgets. Removed Checkbox and Radio
labelPosition. Fixed width for these widgets


#### PR fixes following issue(s)
Fixes # (issue number)
#29088 
#31250 

#### Type of change
- 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
- [x] Jest
- [ ] Cypress

## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] 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
- [ ] 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
2024-03-05 10:46:29 +03:00
Pawan Kumar
9d2da7b348
fix: font-size in header + spacing (#31462)
Fixes #31252

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

- **Style**
- Updated the design of the modal headers, including font weight and
variant adjustments.
- Enhanced spacing within modal components for improved visual
structure.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-04 17:50:43 +03:00
Pawan Kumar
8db4cd3872
chore: create inline buttons widget (#31318)
Fixes #30438 

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

- **New Features**
- Introduced a new `ButtonGroup` component that manages groups of
buttons with customizable properties like color, size, and orientation.
- Added a `ButtonGroupItem` component for rendering buttons within the
`ButtonGroup`.
- Launched an "Inline Buttons" widget allowing users to configure a
group of buttons inline with various properties such as labels,
visibility, and icons.
- Enhanced icon loading with fallback styles for better spacing and
appearance.
- **Refactor**
- Updated various components (ActionGroup, Button, Menu) to use new
`ButtonGroupProps` and `ButtonGroupItemProps`, aligning with the new
`ButtonGroup` component structure.
- Renamed widget names and updated configurations to improve clarity and
consistency across the application.
- **Bug Fixes**
- Fixed feature flag checks to directly return `true` for specific
flags, ensuring feature availability checks are more efficient.
- **Documentation**
- Added comprehensive story and documentation for the `ButtonGroup`
component, showcasing its usage with different options.
- **Chores**
- Enhanced internal codebase by optimizing the `Icon` component
performance through memoization.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-04 10:28:11 +03:00
vadim
fecb1a7202
feat: WDS elevation borders (#31316)
Fixes #31020 

We now have options to express elevation with backgrounds plus shadows,
borders, or a combination of both.


https://github.com/appsmithorg/appsmith/assets/80973/6ab62bc7-b2e9-4de5-9c6a-d5447b591b14




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

## Summary by CodeRabbit

- **New Features**
- Introduced new methods in both dark and light mode themes to calculate
elevation border color.
- **Refactor**
- Restructured the `Elevation` testing story to offer a display of
borders, shadows, and combined effects.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-29 13:46:53 +03:00
Pawan Kumar
5762e69076
fix: refocussing of input (#31376)
Fixes #31329 

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

## Summary by CodeRabbit

- **Style**
- Adjusted the stacking order of elements in the design system to
enhance visual hierarchy.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-02-29 11:48:28 +03:00
Valera Melnikov
45f19ae8bf
fix: wds modal resizer (#31232)
## Description
- Move canvas resizer by 1 DOM node higher.
- Used `contain: strict;` for modal styles.

**Before:**
![Снимок экрана 2024-02-20 в 17 45
30](https://github.com/appsmithorg/appsmith/assets/11555074/89e07e47-e0af-49a6-9970-c2e91aa37ac3)

**After:**
![Снимок экрана 2024-02-21 в 17 58
05](https://github.com/appsmithorg/appsmith/assets/11555074/71305b5a-2ceb-4211-9e6b-e1dac702260e)




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


- **Style**
	- Improved modal overlay containment with updated CSS properties.
- Enhanced page alignment with new centering style for the
`PageViewWrapper` component.

- **Refactor**
- Streamlined canvas viewport handling in the Widgets Editor for better
conditional styling.
- **Chores**
	- Updated Cypress configuration to modify scroll behavior settings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-27 21:38:45 +03:00
Pawan Kumar
b176bdb8a6
chore: create correct radii tokens (#31215)
Fixes #31054 

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

- **New Features**
- Updated styling across various components to align with the new
elevation theme, enhancing visual consistency.
- **Refactor**
- Adjusted border-radius properties in CSS styles for multiple
components to utilize `--border-radius-elevation-3` for a cohesive look.
- **Chores**
- Enhanced the `Elevation` component to use specific elevation-related
border radius values for improved styling.
- **Style**
- Tweaked background color and border-radius properties in the
`Container` component based on `elevatedBackground` and `elevation`
props.
- **Documentation**
- Updated access to `borderRadius` property in the theme object for
`TooltipContent.tsx` to `theme?.borderRadiusElevation?.[1].value`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-02-21 16:49:12 +03:00
Valera Melnikov
7ca7067799
fix: wds fine tunes (#31205)
## Description

- Icon tokens now respond to changes to density and sizing in the theme.
Added the appropriate settings to the config as well
- Fixed the documentation and rendering of some stories in storybook.
- Fixed icon rendering

#### PR fixes following issue(s)
Fixes #30955 

#### Media

https://github.com/appsmithorg/appsmith/assets/11555074/e0cd818f-9716-4887-9f5e-aaa3c3ab9e30


#### Type of change
- Bug fix (non-breaking change which fixes an issue)
- Chore (housekeeping or task changes that don't impact user perception)

## 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
- [x] Jest
- [x] 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
- [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
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] 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

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

- **New Features**
- Introduced custom React hooks for dynamic icon sizing
(`useIconSizing`) and stroke width adjustments (`useIconDensity`).
- Revised `Dimension` component functionality with new token calculation
and user adjustments.
- **Refactor**
- Updated various type imports to improve consistency across theming
hooks.
- Simplified logic in detached widget hooks and removed unnecessary
styling logic in resizer components.
- **Style**
	- Adjusted shadow colors and properties in CSS modules.
- Updated icon and button styling for better size and stroke width
management.
- **Documentation**
- Removed sections focusing on deprecated hooks and components in
storybook stories.
- **Chores**
	- Changed favicon path in Storybook manager.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-21 12:42:46 +03:00
Pawan Kumar
b0c6cd39b3
chore: Add new icons and thumbnails to WDS widgets (#31085)
Fixes #30901 

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

- **New Features**
- Enhanced feature flag checks to always enable specific features
without checking flag values.
- Introduced dynamic sizing for widget icons and thumbnails in the
editor, improving visual consistency.
- Implemented new styling for text input elements to better adapt to
various container sizes.
- Added unique identifiers to improve testability of the widget sidebar.
- Introduced new SVG properties for widget thumbnails and icons,
enriching widget customization options.

- **Refactor**
	- Adjusted gap spacing in the widget sidebar for a more compact layout.

- **Style**
- Updated text input styling to use flexible width for improved layout
responsiveness.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
Co-authored-by: Valera Melnikov <valera@appsmith.com>
2024-02-16 15:48:32 +03:00
Valera Melnikov
d7cd02a45d
fix: add testing library eslint rules (#31028)
Added recommended rules for testing library

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

- **New Features**
- Added `data-testid` attributes across various components for improved
test identification.

- **Tests**
- Enhanced test cases with asynchronous handling (`async`/`await`) for
more reliable user interaction simulations.
- Transitioned to using `getByTestId` instead of `queryByTestId` for
better assertion reliability in tests.
- Added `await` before the `userEvent.click(el)` statement in the
ChartWidget test file.
- Updated the destructured variable names from `queryByTestId` to
`getByTestId` in the DividerWidget test file for improved clarity.
- Added an import for `screen` from "@testing-library/react" and updated
element querying in the TabsWidget test file.

- **Chores**
- Updated ESLint configurations to include testing-library plugins and
rules, improving code quality and consistency in test files.
- Removed unnecessary `cleanup` function calls after tests, following
best practices for test cleanup.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-12 18:59:10 +03:00