Commit Graph

1292 Commits

Author SHA1 Message Date
Rajat Agrawal
cf18829c7d
chore: add first load telemetry to evaluations (#33989)
## Description
This PR adds an attribute to evaluations span that tells whether the
evaluation is first evaluation on page load or a subsequent one.

This attribute will help us filter evaluations and measure gains in
update evaluations and first page load evaluations separately.


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

- **Bug Fixes**
- Added a conditional check before calling `endSpan` to handle
`parentSpan` in action execution.

- **Refactor**
- Updated types and interfaces related to telemetry data handling to
enhance type safety and clarity.
- Adjusted telemetry data processing to accommodate new
`SpanAttributes`.

- **New Features**
- Introduced filtering for telemetry span data to exclude specific
entries, improving data management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-07 18:38:42 +05:30
ashit-rath
1e8a962b8b
chore: Modify logic to detect and hide deep paths in autocomplete suggestions (#33966)
## Description
This PR modifies how the AutocompleteSortRules suppresses paths with
more than 2 level of nesting.

Example: `Table1.selectedRow.address`
A path like the above should be suppressed from autocomplete suggestion
but it should not suppress `.run` of a module instance with autocomplete
params

Example `QueryModule1.run({ limit: 10, user: appsmith.user.name })`
With the above completion, the AutocompleteSortRules's
NoDeepNestedSuggestionsRule check for the `text` property of the
completion and checked agains the value shared in the above example.
This resulted in suppression of the `QueryModule.run` for the
autocomplete list. Therefore the logic now shift from check the `text`
property which is what gets replaced on selection to `displayText` which
is what we see in the autocomplete suggestion.

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

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

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













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


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

- **New Features**
- Enhanced autocomplete functionality by considering `displayText` for
more accurate suggestions.
- Improved code completion in the test suite by adding a new parameter
`name` with a default value referencing `appsmith.user.name`.

- **Tests**
- Updated test cases to reflect new autocomplete and code completion
features, including new declarations for `fieldEntityInformation`.

- **Refactor**
- Updated internal logic to handle new properties and ensure consistency
across the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-06 17:38:40 +05:30
Guilherme Ventura
093cab37d8
chore: add PROPERTY color constant in CodeEditorColors (#33699)
## Description

The color for a code property is being used more than once but not
available as a constant. This PR changes that.
I also moved the `CodeEditorColors` enum to a file where it's less
likely to cause circular dependencies. It was moved from
`{...}/CodeEditor/styledComponents.ts` to
`{...}/CodeEditor/constants.ts`.

_Not related to an existing issue._

## Automation

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

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

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


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-06-05 00:37:56 +05:30
ashit-rath
d967cfe713
chore: Enable entity tern server to lookup fnParams in entity definition to autocomplete function params (#33726)
## Description
This PR enables a functionality to autofill params any entity function
like a query's run of js object's function. This autofill only has one
pre-condition to work and i.e there has to be a property called
`!fnParams` for the entity that should autofill.

The current use-case is for query module instances to be autofilled with
the inputs defined in the modules when they are selected from the
autocomplete in any code editor.


PR for https://github.com/appsmithorg/appsmith-ee/pull/4281

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


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

## Summary by CodeRabbit

- **New Features**
- Improved autocomplete functionality with enhanced completion text
generation for functions.
- Added a new feature to extract the final object path from a given
input string.
  
- **Tests**
- Added new test cases to validate Tern server completion functionality,
ensuring accurate parameter identification and application.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-04 12:13:18 +05:30
Diljit
b6c506dea5
fix: Show loading state of application until all jsobject update calls are complete (#33545) 2024-05-24 11:49:29 +05:30
Diljit
992790d2c0
chore: Prefetch consolidated api using service worker (#33306)
## Description
Prefetch the consolidated API using the service worker. This api is
prefetched for the view and edit urls.

Fixes [Issue URL](https://github.com/appsmithorg/appsmith/issues/33497)
> [!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/9108829019>
> Commit: 30e2db9961d444b984560bb034ef87b443318213
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9108829019&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
- [ ] No
2024-05-16 18:03:28 +05:30
Rudraprasad Das
3e937a94c2
chore: remove dsl flag (#30986)
## Description
Removes flag `release_server_dsl_migration_enabled`

Fixes #30961

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

---------

Co-authored-by: Nayan <nayan@appsmith.com>
2024-05-09 18:41:21 +05:30
Diljit
d00f9fa7f1
fix: Remove redundant action collection update call on page load in edit mode (#33139)
## Description
If there are any functions in a JS Object that accept an argument, an
update action collection for the JavaScript object is triggered when the
application first loads. These update calls alter the lastUpdatedAt time
of a page merely by opening the application in edit mode, without making
any changes.

In getDifferenceInJSCollection, we check if the arguments to the action
(function in a JS object) are the same as those in the Redux store. This
check is not required as we are already checking the equality of the
body and arguments are also part of the body.

This check was always returning false because one of the object has an
extra value key
```
x = [{ name: "argument1" }]
y = [{ name: "argument1" , value: 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.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/8967578757>
> Commit: 5b1cdb75986374be3469b22382c542bf123a8ead
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8967578757&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-06 18:35:19 +05:30
Abhinav Jha
a490128c5d
feat: Refactor isCurrentWidgetFocused to isWidgetFocused (#32990)
## Description
We pass the `widgetId` to a function check if the widget is focused.
This function is mislabeled as `isCurrentWidgetFocused`. The `Current`
assumes that the widget is available in context.
A better name would be `isWidgetFocused`.

This PR refactors to rectify this.


## 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/8960937874>
> Commit: 2126e292d725025fccf98a9c805a1c9b04fc715e
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8960937874&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-06 13:59:42 +05:30
Vemparala Surya Vamsi
a066211ef8
chore: push webworker latencies as a root span (#33115)
## Description
We are capturing the complete webworker latency as a separate root span
and pushing this OTLP telemetry data. We are also attaching this span as
a sub span to the EVAL_TREE spans as well.

Fixes #33127  

> [!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/8965108873>
> Commit: 7176101e021c93b2c53bf3c5d500560729ed45be
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8965108873&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
- [ ] No
2024-05-06 13:24:52 +05:30
Ayush Pahwa
9d25456cac
feat: remote js execution code split (#32853) 2024-05-04 05:46:37 +05:30
Aman Agarwal
c41236845c
feat: added modal name, lint warning for string, action selector modal (#32893) 2024-05-02 17:48:53 +05:30
Jacques Ikot
60d45ea6ff
feat: add analytics for drag and drop building blocks (#32699)
## Description
> [!TIP]  
Add events to track the dragging of building blocks, dropping of blocks,
and the time taken from drag till drop is complete.

**Drag Event**
```
AnalyticsUtil.logEvent("DRAG_BUILDING_BLOCK_INITIATED", {
        applicationId,
        workspaceId,
        source: "explorer",
        eventData: {
          buildingBlockName: props.details.displayName,
        },
      });
```

**Drop Event**
```
AnalyticsUtil.logEvent("DROP_BUILDING_BLOCK_INITIATED", {
        applicationId,
        workspaceId,
        source: "explorer",
        eventData: {
          buildingBlockName: props.details.displayName,
        },
      });

AnalyticsUtil.logEvent("DROP_BUILDING_BLOCK_COMPLETED", {
        applicationId,
        workspaceId,
        source: "explorer",
        eventData: {
          buildingBlockName: dragDetails.newWidget.displayName,
          timeTakenToCompletion: timeTakenTo CompleteValueInSeconds,
          timeTakenToDropWidgets: timeTakenValueInSeconds
        },
      });
```

Fixes #32492  

## Automation

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

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

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






























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

- **New Features**
- Introduced analytics tracking for building block drag-and-drop
operations.
- Enhanced functionality for adding and managing building blocks within
the application.
- **Refactor**
- Updated action type constants for better consistency in handling
building block operations.
- **Bug Fixes**
- Improved logic for setting the start time of building block drag
operations to ensure accurate tracking.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
2024-04-22 15:58:37 +01:00
Shrikant Sharat Kandula
71867f9bcd
chore: Page name validation closer to file name validation (#32830)
1. Introducing a custom validation annotation, `@FileName` to be used on
fields that are used as file/folder names as part of the product.

2. Updated the validation logic to only accept valid file names on
Linux, macOS as well as on Windows.



/ok-to-test tags="@tag.Settings, @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/8784587443>
> Commit: a13f700d490845a9d3c53d0da9c1a763fde6be9b
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8784587443&attempt=1"
target="_blank">Click here!</a>

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











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

- **New Features**
- Enhanced page name validation to include more special characters and
reserved names, ensuring compatibility and preventing errors.

- **Bug Fixes**
- Updated regular expression for replacing disallowed characters in page
names to improve system stability and user experience.

- **Tests**
- Expanded testing for invalid page names to cover a broader range of
scenarios, enhancing reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-22 19:22:41 +05:30
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
Hetu Nandu
ad91acd9a3
fix: Widget Selection prompts showing outside Editor (#32794) 2024-04-20 13:52:49 +05:30
Ankita Kinger
6244e28fed
chore: Update analytics to pass the correct source information in identify user call (#32591)
## Description

Updating analytics to pass the correct source information

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

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

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-19 15:06:50 +05:30
Shrikant Sharat Kandula
f339f9d4f2
chore: Page rename API client validation (#32788)
1. The page names can accept any character except for `/`, backslash and
`:`. This is the validation that the server does now. This PR fixes the
regex that checks the page name to align with this.
2. When typing a character that's not allowed, we end up with a space at
the beginning or end of the page name, that doesn't really make sense,
and is confusing. Then we end up with trailing or leading spaces in the
page name, making the page name display look misaligned. This PR will
make it so that the disallowed characters just can't be typed, and just
don't make a difference in the page name.
3. We're also adding server-side validation for the icon slug.

[Slack
conversation](https://theappsmith.slack.com/archives/C03RPDB936Z/p1713161688607509).

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

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



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

## Summary by CodeRabbit

- **New Features**
- Enhanced page name validation to improve naming consistency across the
application.
- Updated validation for page icons and custom slugs to allow more
flexibility and ensure inputs meet new standards.

- **Bug Fixes**
- Fixed issues in page naming functions to prevent the use of certain
special characters and limit the length, enhancing data integrity and
user experience.

- **Tests**
- Added new tests to verify the handling of invalid and empty custom
slugs, ensuring robustness in page management functionalities.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-19 11:23:14 +05:30
Hetu Nandu
944fa23283
fix: Widget name disappear as you hover over it (#32709)
## Description

Moves the Focus widget action into its own hook, and calling it from the
PositionContainer instead from the DraggableContainer. PositionContainer
is the parent of Draggable and hence adds a larger target for the mouse
focus of a widget.



Fixes #32710

## Automation

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

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

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



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

## Summary by CodeRabbit

- **New Features**
- Enhanced widget interaction by implementing hover to focus
functionality in the PositionedContainer.

- **Refactor**
- Simplified the DraggableComponent by removing unused states and event
handlers, focusing on widget selection improvements.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-17 16:10:35 +05:30
Ankita Kinger
3ed620e156
fix: Updating the ramp link for Enterprise features to open the pricing page (#32698)
## Description

Updating the ramp link for Enterprise features to open the pricing page.

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

## Automation

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

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

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












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

- **New Features**
- Enhanced enterprise-level provisioning and authentication settings
across various components.
- Added a new Cypress command to improve testing by simulating customer
portal interactions.

- **Refactor**
- Streamlined UI components by adjusting styles and simplifying
rendering logic.
- Removed redundant spinner components and simplified conditions in
various editor components.

- **Style**
- Updated CSS properties and variables for better consistency and
maintainability.

- **Tests**
- Updated regression tests to reflect new functionalities and page
interactions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-16 19:05:07 +05:30
Ashok Kumar M
7b527c9024
chore: Merge wds and anvil feature flags (#32609)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX1LNwrMHgs05enX0VDk8QxZH7uP7Ii4HE%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=M7zehz4)
## Description

Cleaning up three patterns of checks to enable wds and anvil into two.
wds and anvil had to have different flags coz anvil had to play catch up
with wds, now that's not the case so it does not make sense to have two
flags.

Old patterns
- checking if the wds feature flag is enabled
- checking if the anvil feature flag is enabled
- checking if the layout system of the app is anvil

New Pattern
- checking if anvil feature flag is enabled (used only for creating an
anvil app)
- checking if layout system of the app is anvil

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

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

















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

- **Refactor**
- Consolidated the usage of layout system checks across the application
to use a unified Anvil layout selector, enhancing consistency in
layout-related conditional logic.
- **Bug Fixes**
- Removed outdated feature flags related to the Anvil + WDS integration,
ensuring the application's feature toggling aligns with the current
development strategy.
- **Tests**
- Updated unit tests to align with the new method of layout system
determination, ensuring test environments accurately reflect production
behavior.
- **Chores**
- Cleaned up redundant code and feature flags that are no longer in use,
simplifying the codebase and reducing potential for errors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-12 22:54:04 +05:30
Ashok Kumar M
a4a364e7c1
chore: fix ee type checks issue. (#32612)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX1RhworVRJTWKPbR01bvcARyY7mXv5SA%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=-JgUAyW)
## Description
Fixing type check fails.

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.MobileResponsive"

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

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-11 19:03:39 +05:30
Ashok Kumar M
271dca0296
feat: Move conversion flow under feature flag. (#32490)
[![workerB](https://img.shields.io/endpoint?url=https%3A%2F%2Fworkerb.linearb.io%2Fv2%2Fbadge%2Fprivate%2FU2FsdGVkX105sGkyMb3eywi17Q8zKGh7H7PVjvpTo%2Fcollaboration.svg%3FcacheSeconds%3D60)](https://workerb.linearb.io/v2/badge/collaboration-page?magicLinkId=8cXsNLR)
## Description
Auto Layout System is being deprecated in favor of Anvil.
So we will no longer update Auto Layout and hence we are removing
conversion flow to make sure no new Auto Layout Apps are created.

However we still want to be able to help users who really have mission
critical use cases to convert.
two ways to do this
- ask Support and they will enable the feature flag to enable
conversion.(for cloud users)
- ask Support and they will reveal the global
function(`overrideFeatureFlag({release_layout_conversion_enabled:
true})`) to enable conversion.(for users not connected to internet)

Implementation:

- current feature flags are supplied from the consolidated api and
widgets consume them via `selectFeatureFlags` selector.
- to override these flags locally, we provide a global
function(accessible from console) `overrideFeatureFlag` which can take
an object of featureflags and save them to indexed db.
- then we use these saved values to override feature flag values
supplied by the consolidated api.
- `selectFeatureFlags` is where the values are combined and consumed by
all components.


Fixes #32140
_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/8641988198>
> Commit: de8e06778bd9fe1feab2f5d20adbaed90e542019
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8641988198&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-11 17:21:14 +05:30
Hetu Nandu
c8f1b82ca5
fix: action selector create flow (#32326)
## Description

Fixes the broken flow where, on creation of a query or JS object in via
the ActionCreator UI, the widget property that initiated it, does not
get bound to the newly created item.

We will now keep reference of the setter method that would set the
binding value to the property and when the item is created, it will call
the method with the correct bind value.

This will wait till that particular action type is created.


Fixes #7745 

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8550162310>
> Commit: `57e69a0c47496d1a1ee97e04991f34ca79440181`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8550162310&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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











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

- **New Features**
- Introduced the ability to create new queries and JavaScript functions
directly from action creators, enhancing the workflow for building
applications.
- Added support for binding newly created queries, APIs, and JavaScript
objects to button onClick events, streamlining the process of connecting
actions to UI elements.
- **Enhancements**
- Improved the code modularity and readability in the Editor Navigation
by refactoring the logic for closing announcement modals.
- **Tests**
- Added regression tests to ensure the reliability of creating actions
via an action selector and their proper binding to properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-05 11:28:47 +05:30
Rishabh Rathod
7ab236aa7e
chore: autoFocus widget search input on load (#32002)
## Description

This PR included two paper cut fixes 

1.  Autofocus the search input after add widgets button click


https://github.com/appsmithorg/appsmith/assets/23132741/3125c0a8-1104-4c1c-aecc-dacd01123f82

2. Remove the helper text for columns in Table widgets

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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8521789054>
> Commit: `cee8a960ddf92126eab419bb109fb44dbf02047e`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8521789054&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**
- Enhanced search input focus control across the editor for an improved
user experience.
- **Refactor**
- Updated components to support dynamic focus management on search
inputs.
- **Bug Fixes**
- Removed mandatory help text validation for property controls,
enhancing flexibility in widget configuration.
- Eliminated the `helpText` requirement from widget configuration,
simplifying setup.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-03 13:21:53 +05:30
Aman Agarwal
af184f3cb0
feat: add edit option in suggested queries in hint commands (#32076)
## Description
This PR introduces a new way to edit the queries directly from slash
hint commands that edit button appears on hover of the hint. This also
introduces an event `EDIT_ACTION_CLICK` as emitted from different other
places of our application with all the similar properties except the
`from` : `SlashCommandHint`

<img width="566" alt="Screenshot 2024-03-27 at 12 45 09 AM"
src="https://github.com/appsmithorg/appsmith/assets/7565635/34f0e226-d45a-482b-8484-7e1fdc672a04">


Fixes #32075
_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  -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8465758601>
> Commit: `cff14b0006441274e182d17ff66603219971ddbd`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8465758601&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


- **New Features**
- Enhanced the code editor with improved command suggestions and quick
command generation, including URL and event parameter handling.
	- Introduced new styling for command suggestions in the code editor.
- **Refactor**
- Updated functions and components for better handling and mapping of
plugins within the code editor.
- **Chores**
- Added necessary imports and updated the usage of various components
and utilities to support new features and improvements.

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

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-03-28 19:24:33 +05:30
balajisoundar
7ba6e5374b
chore: [chart widget] show configuration errors only in editor (#32024)
## Description
- Updated withWidgetProps to inject errors to widget only in canvas mode
- Deleted some stale code that were using the createCanvasWidget
function
   - getCanvasWidgetDsl
   - getMainContainer

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

## Automation

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

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

- **Refactor**
- Simplified test setups by removing unnecessary mocks and spies across
various test files.
- Enhanced widget error handling in editor mode for improved stability
and user feedback.
- **Tests**
	- Refactored widget rendering utility tests for better error handling.
- **New Features**
- Widgets in editor mode now display error information, aiding in
quicker debugging and development.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-26 09:49:58 +05:30
balajisoundar
b498c7e9c4
chore: Add config to widgets to ask for evaluations error and table widget optimisation (#31956)
## Description
- Add `needsErrorInfo` to widget configuration
- Replace usage of `fast-deep-equal` with referential check for
tableData

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8370220547>
> Commit: `ded6b16333e1df5d5d55f22df0559ba378f33d9c`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8370220547&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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





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


- **New Features**
- Introduced a mechanism to display evaluation errors directly on
widgets when necessary.
- **Enhancements**
- Simplified data comparison logic in `TableWidgetV2` to improve
performance.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-21 15:16:00 +05:30
Apeksha Bhosale
54a9d06fb9
chore: making body and variables as optional props- 31568 (#31665)
## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._

Fixes #`Issue Number`  
_or_  
Fixes https://github.com/appsmithorg/appsmith/issues/31568
> [!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  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8325305172>
> Commit: `ce37f05a17f494b1a5409cf79895248cc32f453f`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8325305172&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

<!-- end of auto-generated comment: Cypress test results  -->
2024-03-20 19:03:52 +05:30
balajisoundar
55191cb372
fix: [custom widget] remove stale keys from dynamicTriggerPathList (#31586)
## Description
1. Improve string pattern used to determine whether to show onReady
function missing warning
2. Remove stale keys from dynamicTriggerPathList when user changes the
event names
3. Clean up events when a custom widget unselected in editor

Fixes https://github.com/appsmithorg/appsmith/issues/31682
Fixes https://github.com/appsmithorg/appsmith/issues/30276
Fixes https://github.com/appsmithorg/appsmith/issues/30204

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8337490694>
> Commit: `4fcb4cab6960c9a4a459a2b97261a112363901e2`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8337490694&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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







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


- **New Features**
- Introduced a new route for `CustomWidgetBuilderLoader` component,
enhancing navigation and accessibility.
- Enhanced the Custom Widget Builder with improved event handling and
dynamic trigger path support.
- Added a new styled `Container` for the Custom Widget component for
better layout management.
- **Refactor**
- Improved configuration settings readability and consistency for New
Relic integration.
- Refactored `CustomWidgetBuilderService` for clearer modularity and
enhanced message handling.
- Optimized property editing and update logic within the Property Pane
of the Editor.
- **Bug Fixes**
- Adjusted connection timeout in the Custom Widget Builder for a more
responsive user experience.
	- Updated button sizes in the ConfirmationModal for consistency.
- **Tests**
- Added comprehensive test cases for `CustomWidgetBuilderService` and
`Builder` classes.
- **Chores**
- Removed deprecated `UPDATE_SRCDOC_ACK` event, streamlining Custom
Widget Builder events.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-20 14:31:03 +05:30
Rohan Arthur
9d25c3661a
chore: removes unused js events (#31800)
## Description
Tracking of certain user actions tend to pollute our Mixpanel dashboard
instead of providing meaningful insights. The following Mixpanel events
add very little value and hence should be removed immediately:

CONSOLE_LOG_CREATED
AUTO_COMPLETE_SHOW

The issue mentions two more events:
BINDING_SUCCESS - doesn't seem to exist anymore, maybe already removed
JS_VARIABLE_MUTATED - a bit complicated to remove, will do this in a
separate PR


Fixes #31728  


## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8281028348>
> Commit: `4f1502191d03a5476473a1c911e011e3ad8ad1df`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8281028348&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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



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

- **Refactor**
- Enhanced privacy by removing specific analytics logging for
user-generated events.
- **Chores**
	- Updated analytics event types by removing unused events.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 07:40:26 +05:30
Hetu Nandu
e99cc39e47
chore: Block Selections when Canvas is in Side by Side mode (#31587)
## Description

This pull request aims to enhance the user experience within the
application by modifying the canvas behavior when it is displayed in
"Side by Side" mode alongside Queries or JavaScript sections. The key
change is the disabling of direct selections on the canvas, allowing
interactions with canvas elements only through cmd + click or by
clicking on the widget's name. This adjustment is intended to facilitate
a view-only mode for the canvas during Queries or JS editing, thereby
improving layout and user interaction.

Additionally, the PR introduces enhancements to the application's
testing framework, focusing on improving test reliability in scenarios
involving UI interaction and state changes. Notable updates include:

- Improved error tooltip handling in CurrencyInput_spec.js.
- Ensured page state saving before verifying element presence in
Listv2_BasicChildWidgetInteraction_spec.js.
- Replaced cy.wait("@updateLayout") with cy.assertPageSave() and
introduced a delay in Listv2_spec.js to accommodate functionality
changes.
- Implemented visibility checks in
TableV2_Button_Icon_validation_spec.js to prevent timing-related test
failures.
These technical updates collectively aim to bolster the application's
testing framework, enhancing the reliability and accuracy of automated
tests, especially in UI interaction and state change scenarios.


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

## Automation

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

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





















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

- **New Features**
	- Added new constants for widget selection and focus management.
- Introduced a new event type for tracking widget selections in code
mode.
- **Tests**
- Enhanced test assertions and interactions for better reliability and
error handling in various widgets.
- **Refactor**
- Improved widget selection logic and URL handling for a more intuitive
user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-13 11:53:49 +05:30
albinAppsmith
29cc9d39d5
feat: Added split pane beta announcement modal (#31676)
## Description

This PR adds the beta announcement modal for the new split pane.

Fixes #31657  

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8244295273>
> Commit: `8f20379a3f045328c0c7fa0ddce9b28d34a86348`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8244295273&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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



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


- **New Features**
- Introduced a beta version feature allowing users to work with code and
UI side-by-side, enhancing productivity and user experience.
- Added an announcement modal to inform users about the new split-screen
functionality, with options to try it immediately or learn more.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-12 15:13:52 +05:30
Abhijeet
0c2f1a27e0
feat: Add functionality to enforce strong password for form signups (#31605)
**PR to selectively enable strong password requirements.**

Fixes: https://github.com/appsmithorg/appsmith/issues/31525
2024-03-11 09:39:01 +05:30
balajisoundar
1cce29987c
chore: [Map chart widget] Replace fusion charts with Echarts as chart provider (#31482)
# Description
This pr replaces fusion chart lib with echarts in the map chart widget.
It also checkins the necessary maps.

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/31081


#### Type of change

- 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
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [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


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

- **New Features**
- Updated the Widget interface to make link properties optional,
enhancing flexibility.
- Added a `retryPromise` function for improved error handling and retry
logic in asynchronous operations.
- Introduced new mapping data and utilities for the MapChartWidget,
enabling detailed country/region information and dynamic map types.

- **Enhancements**
- Improved error handling in widget callouts to gracefully handle
missing links.
- Enhanced the MapChartWidget with new functionalities including dynamic
map data loading, chart resizing, and skeleton UI for loading state.

- **Refactor**
- Refactored chart configurations and event handling in MapChartWidget
for better performance and readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-08 13:38:55 +05:30
Hetu Nandu
035f744327
fix: Routing issues in Side by Side (#31551) 2024-03-08 05:26:55 +00:00
Pawan Kumar
c2744a37d0
fix: Get rid of two labels (#31491)
Fixes #31289 

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


- **New Features**
- Ensured certain experimental features ("ab_wds_enabled" and
"release_anvil_enabled") are always enabled for testing purposes.

- **Refactor**
- Improved the reliability of widget configuration updates by ensuring
modifications are made on a cloned object, preserving the original data
integrity.

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-07 11:45:50 +03:00
Ayush Pahwa
825304f7af
fix: workflows query issues (#31567)
## Description
Changelog
- Removed create module options from workflows queries inside apps
- Added error handling for undefined js actions

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

#### 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

## Summary by CodeRabbit

- **New Features**
- Enhanced the action entity component to include `pluginType`, enabling
conditional rendering of menu options based on the plugin type.
- **Bug Fixes**
- Fixed an issue in the JavaScript action utility to safely iterate over
variables, preventing errors when the variable list is uninitialized.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-07 11:02:10 +05:30
Apeksha Bhosale
047134d7ce
fix: missing js arguments so making it optional (#31550) 2024-03-06 14:53:44 +05:30
Ayush Pahwa
77d5af1408
feat: workflow analytics code split and housekeeping (#31425)
## Description
This pr is for code splitting of analytics events for workflows project.
It also does a pending code split for the jsPaneSagas which got missed
during the audit logs feature release. [EE
PR](https://github.com/appsmithorg/appsmith-ee/pull/3636)

Changelog
- Added a context of parent for packages and workflows so the analytics
events can have extra information.
- Updated code split for audit logs feature.

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

#### Type of change

- New feature (non-breaking change which adds functionality)

#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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


- **New Features**
- Enhanced analytics tracking for specific actions in the application,
providing detailed insights into user behavior and action success rates.
- Introduced context-aware data points for optimized analytics data
collection, including parent context extraction from URLs.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-04 15:33:05 +05:30
albinAppsmith
74ff7fcc91
fix: Modal overlay crop issue (#31375) 2024-03-01 14:27:50 +05:30
Hetu Nandu
3134224069
chore: IDE persistence (#31122)
## Description

Adds local persistence to IDE level features
- IDE Tabs
- IDE View mode (Split screen preference)


To achieve this, added a new option: `persist` in Focus Retention. This
will persist any Focus state and restore it when requested for the first
time.




#### PR fixes following issue(s)
Fixes #31135
Fixes #31025

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

## Summary by CodeRabbit

- **New Features**
- Introduced the ability to restore the IDE editor view mode to its last
state.
- Enhanced IDE tabs functionality with separate handling for query and
JS tabs.
- Added persistence of certain IDE states to local storage for improved
user experience.

- **Refactor**
- Updated focus management strategies to accommodate new IDE features
and state persistence.
- Streamlined IDE actions and sagas for better state management and
action handling.

- **Bug Fixes**
- Fixed an issue with the visibility of buttons in the IDE's segmented
header based on specific conditions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-27 10:42:27 +05:30
Ashok Kumar M
d35ad5e842
fix: Anvil Bug fixes for R1 (#31066)
> Pull Request Template
>
> Use this template to quickly create a well written pull request.
Delete all quotes before creating the pull request.
>
## Description
This PR has multiple bug fixes
- Widget boundary showing up in preview mode.
- Widget flickering when space distribution changes.
- highlights seem blurred near table widget
- scrolling to widget when clicked from entity explorer.
- Adding bindings for Zones and Sections on entity explorer.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

- **New Features**
- Introduced ease-in animation for flexgrow value changes in layout
components.
- Enhanced canvas dragging experience by updating z-index based on
activation state.
- **Improvements**
	- Optimized widget rendering by utilizing unique widget IDs.
- Improved code maintainability with the introduction of a styled
`canvas` component for better styling encapsulation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-27 10:11:55 +05:30
Ayush Pahwa
d5b711cd5f
feat: workflow js run on browser (#31106)
## Description
This PR introduces browser run for workflows JS files. 
Changes:
- In case of workflows js object, there are no variables in the
definition. This causes the jsaction.variables to be undefined which
causes further issues down the line preventing second API call for
update to the server. Added handling for that.
- Pushed workflows action to the data tree to start with linting and
autocomplete. This was coming as empty for workflows editor.

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

#### Type of change

- New feature (non-breaking change which adds functionality)

## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

## Summary by CodeRabbit

- **New Features**
- Enhanced data selection capabilities to include workflow actions and
JavaScript actions.
- **Bug Fixes**
- Improved stability in JavaScript action handling by ensuring variables
are always defined, preventing potential errors.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-26 21:14:35 +05:30
Apeksha Bhosale
c655aea15c
chore: Import debugger fixes (#31080)
## Description
To add debugger error for import path for module instance on EE, this PR
enables code to be extended on EE


#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

- **Refactor**
- Updated import paths and references for `ENTITY_TYPE` to
`EntityTypeValue` across various components and utilities for improved
code consistency.
- Reorganized import statements related to `AppsmithConsole` utilities
and constants to enhance code maintainability.
- Adjusted usage of enums and types, specifically for entity and
platform error handling, to align with updated import paths.

- **New Features**
- Introduced utility functions for handling entity types and platform
errors in AppsmithConsole, including new constants and error retrieval
functions.
- Added a new enum value `MISSING_MODULE` to better categorize log types
in debugging scenarios.

- **Bug Fixes**
- Implemented changes to error logging and handling mechanisms,
including the addition of new case handling for
`LOG_TYPE.MISSING_MODULE` in debugger logs, to improve the debugging
experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-14 12:00:18 +05:30
albinAppsmith
49e8a7d4ed
fix: Add back canvas resize (#31058)
## Description

Added back canvas resizing while switching to side by side.

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/31057


#### 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [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


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

## Summary by CodeRabbit

- **Refactor**
- Enhanced the `useDynamicAppLayout` hook for improved layout
calculations and control flow, removing dependencies on specific editor
states and modes.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-13 12:34:55 +05:30
Jacques Ikot
d22b63277d
feat: starter building blocks for all users (#30909)
## Description
**Goal**
The starter building block on canvas experiment was a success, this PR
removes the feature from behind a feature flag and makes it available to
all users on the platform.

Summary of changes
- Remove feature flag condition in DropTarget component
- Clean up unnecessary state used to find newUsers and firstTimeUsers
- Remove redundant storage functions used for storing first time user
and application id
- Remove showStarterTemplatesInsteadofBlankCanvas prop in signUpHelper
and signUpSuccess
- 
#### PR fixes following issue(s)
Fixes #30903 

#### Type of change
- New feature (non-breaking change which adds functionality)

## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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


- **Refactor**
- Simplified signup process by removing the option to choose starter
templates or a blank canvas.
- Streamlined onboarding component logic and storage management for a
smoother user experience.
- Optimized import organization and removed unused functions in the
DropTargetComponent.
- Enhanced test coverage for building blocks and starter templates in
client-side templates.

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

---------

Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
2024-02-09 10:00:04 +05:30
balajisoundar
0681d2749e
feat: [Custom widget] Enable dynamic height and auto layout. (#30459)
Now custom widgets can grow in height in fixed (dynamic height) and in
auto layout. This will enable users to implement expand/collapse , Table
with expandable rows and more

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

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change

- New feature (non-breaking change which adds functionality)
>
>
>
## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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



## Summary by CodeRabbit

- **New Features**
- Introduced dynamic height adjustment for custom widgets, enhancing the
flexibility and visual integration within the app.
- **Improvements**
- Optimized height update mechanism for custom widgets using
`ResizeObserver` for more responsive layout changes.
- **Refactor**
- Streamlined event handling and UI adjustments in custom widgets to
support dynamic height settings more efficiently.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-07 16:30:50 +05:30
Hetu Nandu
e68cf54360
chore: Make App Sidebar Generally Available (#30923)
## Description

Makes App Sidebar Generally Available

- Removes any feature flag control for App Sidebar
- Removes any older functionalities to handle non App Sidebar IDE
versions like:
    - App Settings having an open or close state
    - Entity Explorer ability to be hidden
- Removes the announcement for App Sidebar


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

#### Type of change

- Chore (housekeeping or task changes that don't impact user perception)



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

- **Refactor**
- Streamlined component logic by consolidating functions and removing
unnecessary dependencies.
- Simplified rendering and logic flow in various editor components for
improved user experience.
- **Style**
- Enhanced styling and layout in the app settings pane and editor
sidebar components.
- **Chores**
- Improved code maintainability by cleaning up unused imports,
variables, and functions.
- **Bug Fixes**
- Addressed UI inconsistencies by removing deprecated feature flags and
adjusting component behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-07 11:25:23 +05:30
Nirmal Sarswat
479f9132bd
feat: Add knowledge retrieval in Appsmith AI (#30725)
## Description
Frontend Changes
- Remove Appsmith AI Query as a default datasource query
- Add Appsmith AI Datasource in the AI section of Datasources screen
- ~~Creation of Appsmith AI datasource to mimic the mock datasource
flow. This was necessary because we are using a trigger in the
datasource edit form and inorder for the trigger to function the
datasource needs to be created before the trigger call.~~ (We are using
the plugin trigger to upload files and hence this change is not required
anymore)
- Add a new Form control element to support multiple file uploads. The
multiple file upload control type can either upload the files to the
trigger end point (multipart-form trigger api) or save the files as
base64 string in the datasource configuration. If the files are uploaded
in the trigger, only the file metadata (name, size, mimeType and id) is
saved in the datasource configuration.
- Fix a bug in Dropdown control. This fix makes sure that the options
that are disabled as infact disabled on the UI.
- Add preview for the new Multi file picker control type.

Backend Changes
- Add a new trigger end point for datasource to support multipart form
data
- Add trigger for Appsmith AI datasource to upload files during
datasource creation/edit flow
- Associate the file ids with the datasourceId in AI Node server
- Add Knowledge retrieval implementation in text generation action for
Appsmith AI datasource
- Add form.json for Appsmith AI Datasource
- Add a fetch files trigger for populating the files in the Text
generate action.

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## 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
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


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

- **New Features**
- Introduced a multiple file picker control for users to select and
upload multiple files with options for file types and size limits.
- Added new AI Query functionality with enhanced file upload
capabilities, including timeout settings.
- Enhanced datasource editor to display the number of uploaded files or
a message if no files are uploaded.
- **Bug Fixes**
- Simplified the logic for showing the datasource selector by removing
specific conditions related to the Appsmith AI Plugin.
- **Refactor**
- Removed unused imports and functionalities related to Appsmith AI
across various components.
- Updated plugin handling to dynamically determine button text based on
plugin type.
- **Chores**
- Implemented backend support for file upload and association with
datasources and workspaces.
- Added new utility functions and DTOs for handling file uploads and AI
plugin interactions.
- **Documentation**
	- No visible changes to end-users.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Diljit VJ <diljit@appsmith.com>
2024-02-05 17:15:45 +05:30