Commit Graph

25 Commits

Author SHA1 Message Date
Ashit Rath
88d3599bc1
chore: Split canvas widget reducers (#39327)
## Description
Split canvasWidgetsReducer and canvasWidgetsStructureReducer for UI
modules

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

## 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/13385385883>
> Commit: ec13bb0625735d4a0c1b918fd785b3a5ea858245
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13385385883&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 18 Feb 2025 08:41:34 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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

- **Refactor**
- Streamlined internal dependency management and reorganized module
paths for improved maintainability.
- Updated import paths for `CanvasWidgetsReduxState`,
`FlattenedWidgetProps`, and related types to reflect a new
organizational structure.
- These behind-the-scenes changes do not affect any user-visible
functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-02-18 16:12:05 +05:30
Pawan Kumar
dc923c9fe6
chore: add wds multiselect component (#39300)
WDS Multi-Select component


https://github.com/user-attachments/assets/2809dd44-2a1a-47ba-bccc-4d0bf313aa99

Note: This is a kind of hacky multi-select component. React aria does
not provide us with any multi select component. So we are making it with
existing components like popover, listbox, and autocomplete.


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

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

- **New Features**
- Introduced a new MultiSelect component that offers a dynamic
multi-select interface with responsive display, clear error messaging,
and loading states.
- Added a new MultiSelectValue component to enhance the display of
selected items in the MultiSelect interface.

- **Enhancements**
- Improved styling flexibility across key components—including ListBox,
ListBoxItem, TextField, and Select—to support custom appearances.
- Refined Calendar and DatePicker interactions for a smoother, more
reliable user experience.
- Added new export statements for selectStyles and fieldErrorStyles to
improve modularity and accessibility.
- Updated the version of the react-aria-components dependency for
enhanced performance and features.
<!-- 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/13386938922>
> Commit: 9d486cbe335446c351b098a420f0e8d0d06b268c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13386938922&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 18 Feb 2025 09:33:19 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2025-02-18 16:00:50 +05:30
Hetu Nandu
1a60eaaf89
fix: Reduce cycle deps by removing wrong exports (#39268)
## Description

Remove specific cycle dependencies created because a file was both
importing and exporting items it does not modify.

By reducing cycle dependencies here, I am buying credits that allow
adding cycle dependencies in another PR but very hard to avoid

This PR reduces the deps by 4

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

PR which adds the cycle deps:
https://github.com/appsmithorg/appsmith/pull/39100


## Automation

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

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


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


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

## Summary by CodeRabbit

- **New Features**
- Introduced a “Show More” option in the code editor’s command palette
for additional suggestions.
- Enabled default expansion for table widget panels to improve content
visibility.

- **Refactor**
- Consolidated entity and type management for a more consistent and
maintainable platform.

- **Improvements**
- Enhanced widget behavior with dynamic updates in dropdowns, file
pickers, and map styling for a smoother user experience.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-02-14 18:26:31 +05:30
Pawan Kumar
fd4b6d420a
chore: update tags for key value widget (#39024)
/ok-to-test tags="@tag.Anvil"
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Refactor**
- Updated the key-value widget’s categorization so it now appears as a
display element rather than as an input element, aligning its grouping
with its intended presentation without affecting its core functionality.

<!-- 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/13151795021>
> Commit: 03ee20f22198dce282599b16d3c3ab5859c7ff2e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13151795021&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 05 Feb 2025 07:13:07 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2025-02-06 12:12:01 +05:30
Pawan Kumar
65df8d4c78
chore: Use zone as form (#38550)
Fixes #38525 

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


https://github.com/user-attachments/assets/891ecf61-2850-46c4-acd3-b170196e5ab7



<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12703524629>
> Commit: 64616e2f16ed1884c0e7fd86f511b35801b17b88
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12703524629&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Fri, 10 Jan 2025 05:20:43 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

## Release Notes

- **New Features**
  - Added form validation controls for buttons
  - Introduced ability to disable buttons on invalid form
  - Added option to reset form on button click
  - New context provider for managing widget state in UI builder

- **Improvements**
  - Enhanced reCAPTCHA handling with reset functionality
  - Updated button click event management
  - Improved widget context management

- **Configuration Updates**
  - New form settings for button widgets
  - Added `useAsForm` configuration for zone widgets

These updates provide more granular control over form interactions and
button behaviors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-01-10 12:48:51 +05:30
Pawan Kumar
a9a0d714c0
chore: fix form widgets bugs (#38492)
/ok-to-test tags="@tag.Anvil"

Fixes #38200
Fixes #38201
Fixes #38409
Fixes #38410

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

Based on the comprehensive summary, here are the updated release notes:

- **New Features**
- Enhanced calendar functionality with month and year dropdown
selection.
    - Improved input and select component styling.
    - Added text wrapping and line clamping for field labels.

- **Bug Fixes**
- Refined input validation and error handling across multiple widgets.
    - Updated text property handling for various input widgets.

- **Documentation**
    - Updated autocomplete configuration for input widgets.

- **Chores**
- Temporarily disabled several Cypress test suites for Anvil widgets.
    - Standardized text property naming across input-related components.

- **Style**
- Improved CSS styling for input groups, dropdowns, and calendar
components.
    - Enhanced text rendering and whitespace handling.

These release notes capture the key changes across the design system and
widget components, focusing on user-facing improvements and internal
refinements.
<!-- 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/12650457693>
> Commit: c41781c32b9fd186b718338556af9a53221eaca7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12650457693&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 07 Jan 2025 11:41:09 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2025-01-07 17:34:15 +05:30
Pawan Kumar
ecf9934859
chore: fix wds select widget bugs + refactor (#38304)
Fixes #38197 

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

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

## Summary by CodeRabbit

- **New Features**
- Enhanced styling for select input components, improving visual
consistency.
- Introduced new validation functions for widget properties, ensuring
better data integrity.
- Added properties for improved configuration of select widgets,
including dynamic data binding.
- New utility functions for handling options in select widgets,
enhancing functionality.
- Introduced a constant for sample data to facilitate testing and
development.

- **Bug Fixes**
- Resolved issues with widget rendering and responsiveness to property
changes.

- **Refactor**
- Streamlined widget implementation by leveraging inherited
functionalities and simplifying methods.
- Updated methods to improve handling of derived properties and options.
- Removed obsolete configuration files and validation functions to clean
up the codebase.
<!-- 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/12480977859>
> Commit: d669e05ed5b7ce07a54259b7e301eb65341c1b02
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12480977859&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 24 Dec 2024 11:43:59 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-24 17:28:57 +05:30
Pawan Kumar
65b98c65b5
chore: Allow currency and phone dial code change (#38141)
![CleanShot 2024-12-16 at 16 42
37](https://github.com/user-attachments/assets/1b59a2f9-d8d1-4fa9-8827-493622088e56)

![CleanShot 2024-12-16 at 16 43
12](https://github.com/user-attachments/assets/b8d29bba-55c5-42ec-8352-fb8b374ef8d2)

Fixes #38091 

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

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

## Summary by CodeRabbit

- **New Features**
- Added new props for enhanced styling and functionality in various
components, including `className` and `maxHeight`.
- Introduced dropdown menus for currency and ISD code selection in the
CurrencyInput and PhoneInput components.
- New story added for the `TextField` component showcasing prefix and
suffix usage.
- Added a custom hook `useRootContainer` for better theme provider
management.

- **Bug Fixes**
- Improved conditional rendering for input elements based on prop
values.

- **Style**
- Significant updates to CSS for input and select components, enhancing
layout and visual feedback.
- New CSS classes added for ComboBox and styling adjustments for
existing classes.
	- Enhanced styling for the ComboBox popover and other components.
- New CSS rules for currency and dial code options in respective
widgets.

- **Documentation**
- Updated property configurations for widgets to include new toggle
options for currency and dial code changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12391730072>
> Commit: b8bb73890940ea57a708ffe31b1b61f02fbe7417
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12391730072&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 18 Dec 2024 11:33:31 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-19 11:12:23 +05:30
Pawan Kumar
7a7f37cd48
chore: fix menu widget bugs (#38226)
Fixes #38202 

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

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

## Summary by CodeRabbit

- **New Features**
	- Introduced a new configuration for widget sizing and characteristics.
- Enhanced menu functionality with clearer item rendering and
interaction.

- **Bug Fixes**
	- Improved type safety and compatibility in menu item processing.

- **Refactor**
- Updated configuration handling for menu items, transitioning to a more
generic structure.
	- Rearranged export statements for better organization.

- **Documentation**
- Updated method signatures and interface definitions for better clarity
and usability.
<!-- 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/12392606404>
> Commit: ade8c87e56c003a3d5c733f9c66a2ac4345f7158
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12392606404&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 18 Dec 2024 12:33:31 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-19 11:12:09 +05:30
Pawan Kumar
749f11b835
chore: fix custom widget 's updateModel (#38129)
/ok-to-test tags="@tag.Anvil"

Fixes a bug where appsmith.updateModel was not working properly.

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

## Summary by CodeRabbit

- **Bug Fixes**
- Updated the handling of model updates in the Custom Widget, improving
the way messages are processed from the iframe.

- **Documentation**
- Clarified the expected input for the `onUpdateModel` function in
relation to the message object.

<!-- 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/12294856140>
> Commit: cb0ae84342e991d2027a49f3032e815688bcc787
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12294856140&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Thu, 12 Dec 2024 11:12:50 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-12 14:39:53 +03:00
Pawan Kumar
819881989e
chore: Refactor WDS custom widget (#38038)
/ok-to-test tags="@tag.Widget"

Fixes #38028 

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

## Summary by CodeRabbit

- **New Features**
- Introduced a new `IframeMessenger` class for improved communication
between the parent window and iframe.
- Added `onConsole`, `onTriggerEvent`, and `onUpdateModel` props to the
`Preview` component for enhanced event handling.
- Streamlined HTML template generation with the `createHtmlTemplate`
function.

- **Bug Fixes**
- Removed unnecessary UI-related event handling from the widget,
simplifying the communication structure.
- Updated event names in template files from `"onReset"` to
`"onResetClick"` for clarity.

- **Refactor**
	- Renamed `CustomComponent` to `CustomWidgetComponent` for clarity.
	- Modularized message handling logic in the `CustomWidgetComponent`.
- Refactored the `defaultApp.ts` to use dynamic template data instead of
hardcoded values.

- **Style**
	- Updated CSS for the `.container` class to enhance layout consistency.

- **Tests**
	- Simplified test assertions in the `customWidgetscript` test suite.
<!-- 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/12234751176>
> Commit: eb55fbdf716e48b677fc01ea40bf6a894ffd75ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12234751176&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
> Spec:
> <hr>Mon, 09 Dec 2024 12:47:13 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-10 13:03:03 +05:30
Pawan Kumar
14a16926da
chore: add custom widget to anvil (#37878)
/ok-to-test tags="@tag.Widget"

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

## Release Notes

- **New Features**
- Introduced a custom widget with enhanced console logging and
communication capabilities.
- Added a configuration system for widget properties, including
visibility, style settings, and autocomplete functionality.
- Implemented a responsive design for the custom widget with dynamic
loading events and error handling.
  - Expanded widget mapping to include the new custom widget type.
- Added support for multiple code templates (React, Vue, Vanilla JS) for
custom widget creation.
- Introduced a custom hook for managing widget height based on component
sizes and embedding status.

- **Bug Fixes**
- Resolved various issues related to event handling and message passing
between the widget and parent context.

- **Documentation**
- Added comprehensive comments and structure to configuration files for
better clarity and usability.

- **Style**
- Included a CSS reset stylesheet for consistent styling across
browsers.
  - Introduced new CSS classes for improved widget styling.
- Enhanced styling rules to manage pointer events during widget
resizing.

- **Tests**
- Developed a test suite to ensure the reliability of the widget's
functionality and event handling.
<!-- 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/12194686716>
> Commit: a757240165ea8d2730d6b6f2574b2c1c7335fada
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12194686716&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Widget`
> Spec:
> <hr>Fri, 06 Dec 2024 08:28:58 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-12-06 16:03:40 +05:30
Pawan Kumar
63eec76635
chore: add wds datepicker widget (#37711)
![CleanShot 2024-11-26 at 15 56
15](https://github.com/user-attachments/assets/d812f475-11e1-4750-9018-bdd39d5a5de3)

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

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

## Release Notes

- **New Features**
- Introduced the WDS Date Picker Widget, enhancing date selection
capabilities within the UI.
- Added configuration options for widget size, visibility, and
autocomplete behavior.
- Implemented comprehensive validation for date input, ensuring accurate
user selections.
- Expanded widget collection to include the new WDS Date Picker Widget.
- Introduced new constants for date format options, facilitating diverse
formatting choices.
- Added support for a new "Date" input type, enhancing input widget
configurability.

- **Documentation**
- Updated property pane configurations to include detailed settings for
date format, validation, and event handling.

- **Bug Fixes**
- Improved handling of derived properties to ensure proper context
during widget interactions.

These updates collectively improve user experience and flexibility in
date selection within the application.
<!-- 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/12083004714>
> Commit: b17348e03db911501970d2c8a59c4fea30a175e1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12083004714&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Fri, 29 Nov 2024 10:44:39 UTC
<!-- end of auto-generated comment: Cypress test results  -->

---------

Co-authored-by: Vadim Vaitenko <vadim@appsmith.com>
2024-11-29 16:20:58 +05:30
Pawan Kumar
d87f7ccd62
chore: add datepicker component (#37563)
Added daterpicker component along with other components needed for it
like Calendar andTimeField

Datepicker
![CleanShot 2024-11-21 at 12 38
20@2x](https://github.com/user-attachments/assets/334cdbb9-10f8-442a-93d8-c62b83668972)

Calendar
![CleanShot 2024-11-21 at 12 38
54@2x](https://github.com/user-attachments/assets/6123a842-5c32-48f1-86f9-56ffe249fedf)

Timefield
![CleanShot 2024-11-21 at 12 41
56@2x](https://github.com/user-attachments/assets/b9b2dc3c-91fd-4b90-99f4-461685be7b37)

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

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

## Release Notes

- **New Features**
	- Introduced a `Calendar` component for date selection and display.
- Added a `DatePicker` component for selecting dates and times with
enhanced error handling.
- Launched a `TimeField` component for time input with optional prefix
and suffix.
- Updated `TextField` component replacing the previous `TextInput` for
improved usability.

- **Bug Fixes**
	- Enhanced styling and responsiveness of input components.

- **Documentation**
- Added Storybook stories for `Calendar`, `DatePicker`, and `TimeField`
components to showcase functionalities and configurations.

- **Chores**
- Refactored imports to utilize the new `TextField` component across
various widgets.
<!-- 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/11970103158>
> Commit: a1a552cb0bfdc9754341de5db0a6d8b142479083
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11970103158&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Fri, 22 Nov 2024 10:01:23 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-11-22 15:50:43 +05:30
Ankita Kinger
91cf54ba47
chore: Updating the settings icon throughout the product (#37330)
## Description

Updating the settings icon throughout the product to use the below icon:

https://www.figma.com/design/8L9BXMzNTKboGWlHpdXyYP/Appsmith-IDE?node-id=33-3546&t=qpptzxhkWatrFIn1-4


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

## Automation

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

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


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


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

- **New Features**
- Updated icons for various settings-related components from
"settings-2-line" to "settings-v3" to enhance visual representation.

- **Bug Fixes**
- Improved handling of frame ancestor settings in the AdminSettings
configuration, ensuring better management of stored values.

- **Documentation**
	- No changes to the documentation were made in this release. 

- **Chores**
- Updated multiple components to reflect the new icon, maintaining
overall functionality without introducing new logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-12 18:17:58 +05:30
Pawan Kumar
d6305bad82
chore: chat widget polish fixes (#37124)
- [x] Fix button variant control in the property pane #37005
- [x] elevatedBackground for chat should work the same as for statbox
- [x] Markdown polishing. We need to fix lists, inline code, etc. Check
how it works with a table.

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

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

## Summary by CodeRabbit

## Release Notes

- **New Features**
- Introduced a new `noPadding` property for the `ContainerComponent`,
allowing for conditional styling.
- Enhanced styling for segmented controls and input components for
improved visual clarity and responsiveness.

- **Bug Fixes**
- Refined CSS selectors for separators in segmented controls to improve
visual representation.

- **Style**
- Adjusted styles for input groups and inline code elements for better
alignment and visual feedback.

- **Documentation**
- Updated Storybook configuration for the `Markdown` component to
reflect new formatting changes.

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

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11571964148>
> Commit: 29bac9bcdc0b95d4a6a4da2b4f503aa9494d7bcb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11571964148&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Tue, 29 Oct 2024 10:51:44 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-10-29 16:21:54 +05:30
Pawan Kumar
62e5f0952e
chore: update anvil modal size api (#37033)
Fixes the API for modal for setting modal.

/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/11479189189>
> Commit: 1a07d20439ef71515a8246cc1065af60bf54f07a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11479189189&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 23 Oct 2024 12:09:48 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

## Summary by CodeRabbit

- **New Features**
- Introduced a new `size` prop for the Modal component, allowing for
flexible sizing options (e.g., small, medium, large).
- Added `overlayProps` for enhanced customization of the Modal's overlay
properties.

- **Bug Fixes**
- Removed the outdated `dataAttributes` prop, streamlining the Modal
configuration.

- **Documentation**
- Updated examples to reflect the new prop structure for the Modal
component.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-23 18:30:39 +05:30
Valera Melnikov
97f2560170
chore: move chat widget to EE repo (#36845)
## Description
I deleted all the code associated with the AI chat widget from CE and
moved it to EE. In order for the code splitting to work correctly, I
created two empty files:
-
[src/ee/modules/ui-builder/ui/wds/constants.ts](https://github.com/appsmithorg/appsmith/pull/36845/files#diff-472f9e0642a7c5739f6fc585d877c3f7ead4aec2525db231f724a6a981c400fd)
-
[src/ee/modules/ui-builder/ui/wds/index.ts](https://github.com/appsmithorg/appsmith/pull/36845/files#diff-295de4eead00758748f21d11af43f079a635fcf3b377d428a15c6f7555e8882c)

Related EE PR — https://github.com/appsmithorg/appsmith-ee/pull/5333

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


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


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

- **New Features**
- Introduced new constants and variables for enhanced widget mapping and
configuration.

- **Bug Fixes**
- Removed outdated components and exports from the AIChat and ChatInput
modules to streamline functionality.

- **Chores**
- Cleaned up unused files and exports to improve codebase
maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-14 13:10:28 +03:00
Ilia
7644b67483
feat: show chat description (#36805)
## Description

[Figma](https://www.figma.com/design/mVEbXXryqv2oBxMcNg8yjC/Concepts-%2B-First-Demo?node-id=295-1720&node-type=section&m=dev)


Fixes #36803  

> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

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


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


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

## Summary by CodeRabbit

- **New Features**
- Introduced a chat description modal in the AI chat component, allowing
users to view additional information about the chat.
- Added a button to open the chat description modal alongside the chat
title.
- Enhanced the `WDSAIChatWidget` to accept and display the chat
description.

- **Bug Fixes**
- Improved layout adjustments for better responsiveness in the chat
interface.

- **Documentation**
- Enhanced export capabilities for easier access to chat description
modal components and types.

- **Style**
- Updated CSS styles for improved layout and flexibility in spacing
across various components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-11 12:06:18 +02:00
Ilia
a0814e1438
feat: add initial assistant message (#36798)
## Description

![image](https://github.com/user-attachments/assets/bb8cf448-6bfe-485a-9e19-d222ae3d8411)



Fixes #36776  

> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11275055683>
> Commit: a8f155422725c5310b7ac37d49a57995ee20f732
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11275055683&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 10 Oct 2024 14:29:09 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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

## Summary by CodeRabbit

- **New Features**
- Introduced `AssistantSuggestionButton` for enhanced user interaction
in the AI chat.
- Added support for displaying and applying assistant suggestions in
chat threads.
	- Implemented an editable array component for managing string pairs.
- Enhanced configuration options with new properties for initial
assistant messages and suggestions.

- **Improvements**
	- Improved state management for dynamic messages in the AI chat widget.
- Updated rendering logic for conditional display of suggestions in chat
messages.
- Added new props to facilitate better interaction and suggestion
handling in chat components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-10 16:29:26 +02:00
Pawan Kumar
6e59db227d
chore: refactor inputs (#36680)
/ok-to-test tags="@tag.Anvil"

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

- **New Features**
- Introduced a new `ChatInput` component for enhanced user input in chat
interfaces, featuring structured input fields and dynamic height
adjustments.
- Added a customizable `Input` component for both single-line and
multi-line text entry, with support for password visibility and loading
states.
- Launched a `TextAreaInput` component that integrates loading states
and optional prefix/suffix elements for a versatile text area
experience.

- **Improvements**
- Enhanced input components with new interfaces for better customization
options and shared properties.

- **Bug Fixes**
- Resolved issues related to input sizing and alignment, ensuring a
smoother user experience.

- **Documentation**
- Expanded documentation to include details on the new input components
and their usage examples.
<!-- 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/11251960399>
> Commit: dc87d2de1213d23fdda1f52cee5b346d68627263
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11251960399&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Anvil`
> Spec:
> <hr>Wed, 09 Oct 2024 10:49:28 UTC
<!-- end of auto-generated comment: Cypress test results  -->
2024-10-09 16:22:44 +05:30
Ilia
e495422975
feat: add AIChat stories and tests (#36700)
## Description
- Add stories for storybook
- Add unit tests. Some case are not covered due to lack of clear
requirements and will be added later
- Fix bug where `username` is `undefined`


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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11177693011>
> Commit: ba99a27d5956a74dade5ae54998056bd2d3d6a44
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11177693011&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Fri, 04 Oct 2024 10:27:03 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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

## Summary by CodeRabbit

## Release Notes

- **New Features**
- Introduced a new Storybook configuration for the `AIChat` component,
showcasing various states including `Main`, `EmptyHistory`, `Loading`,
and `WithHistory`.
  
- **Improvements**
- Enhanced testability of the `AIChat` and `ChatTitle` components by
adding `data-testid` attributes.
- Updated `AIChat` component to streamline props and improve rendering
logic.

- **Bug Fixes**
- Ensured the `username` prop defaults to an empty string in the
`WDSAIChatWidget` component.

- **Tests**
- Added a comprehensive test suite for the `AIChat` component,
validating its rendering and functionality across different scenarios.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-04 12:38:10 +02:00
Pawan Kumar
d1e788b779
chore: add ai chat to wds config map (#36687)
/ok-to-test tags="@tag.IDE"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11174489246>
> Commit: d61112f4ab3b99f62c8fe757dc482896c922f25d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11174489246&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.IDE`
> Spec:
> <hr>Fri, 04 Oct 2024 05:57:18 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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

## Summary by CodeRabbit

- **New Features**
- Introduced the `WDS_AI_CHAT_WIDGET` to the widget map, enabling its
use as a valid widget type in the UI builder.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-04 11:28:30 +05:30
Ilia
9e2fb95aee
feat: init AI chat widget (#36610)
## Description


Fixes #36541

> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags=""

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!WARNING]
> Tests have not run on the HEAD
c4a6e25abc716cc6a54e612a3800ca95079ba8a0 yet
> <hr>Thu, 03 Oct 2024 11:06:19 UTC
<!-- end of auto-generated comment: Cypress test results  -->


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


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


- **New Features**
- Introduced the WDS AI Chat Widget for interactive chat experiences
using OpenAI.
	- Added the AIChat component for enhanced chat functionality.
- Expanded the collection of available widgets with the new WDS AI Chat
Widget.
- Introduced the ThreadMessage component for structured message
rendering in the chat interface.
- Added UserAvatar and ChatTitle components for improved user
interaction and display.
- Introduced new icons and thumbnails for AI Chat and Date Picker to
enhance visual representation.

- **Bug Fixes**
- Resolved issues related to widget integration within the existing
framework.

- **Documentation**
	- Updated configuration files to enhance modularity and organization.
	- Expanded documentation to include new icons and thumbnails.

- **Chores**
- Added the OpenAI, React Markdown, and React Syntax Highlighter
dependencies for improved functionality.
	- Introduced a new type declaration dependency for better type support.

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

---------

Co-authored-by: Valera Melnikov <valera@appsmith.com>
Co-authored-by: saiprabhu-dandanayak <saiprabhu.dandanayak@zemosolabs.com>
Co-authored-by: Rudraprasad Das <rudra@appsmith.com>
Co-authored-by: Abhishek Pandey <66054987+a6hishekpandey@users.noreply.github.com>
Co-authored-by: NandanAnantharamu <67676905+NandanAnantharamu@users.noreply.github.com>
Co-authored-by: “NandanAnantharamu” <“nandan@thinkify.io”>
Co-authored-by: Anagh Hegde <anagh.hv@gmail.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
Co-authored-by: Abhijeet <41686026+abhvsn@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com>
Co-authored-by: sneha122 <sneha@appsmith.com>
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
Co-authored-by: Nidhi Nair <nidhi@appsmith.com>
Co-authored-by: Nilansh Bansal <nilansh@appsmith.com>
Co-authored-by: Rishabh Rathod <rishabh.rathod@appsmith.com>
Co-authored-by: vadim <vadim@appsmith.com>
2024-10-03 14:26:18 +03:00
Ilia
199638229b
chore: move wds widgets to modules (#36511)
## Description



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

## Automation

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

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


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


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

## Summary by CodeRabbit

- **Chores**
- Updated import paths for various components and types to reflect a new
directory structure, enhancing organization and maintainability.
- Modified paths for multiple widgets including `WDSInputWidget`,
`WDSBaseInputWidget`, `WDSModalWidget`, and `MenuButtonWidget`, ensuring
consistent access to resources.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-24 18:04:02 +02:00