Commit Graph

16776 Commits

Author SHA1 Message Date
Nikhil Nandagopal
4c0a8d1a09 Updated Label Config 2024-03-19 23:05:30 +05:30
Nikhil Nandagopal
83972f1167 Updated Label Config 2024-03-19 23:05:18 +05:30
Nikhil Nandagopal
dfbb3c864a Updated Label Config 2024-03-19 23:05:01 +05:30
Nikhil Nandagopal
6f615df81d Updated Label Config 2024-03-19 23:04:42 +05:30
Nikhil Nandagopal
69ec4fcc87 Updated Label Config 2024-03-19 23:04:24 +05:30
Nikhil Nandagopal
4b3c437069 Updated Label Config 2024-03-19 23:03:58 +05:30
Nikhil Nandagopal
fb78be2b4f Updated Label Config 2024-03-19 23:03:43 +05:30
Shrikant Sharat Kandula
34c59c8f4d
chore: Reduce RTS error log spam (#31917)
We're logging the entire request/response, Axios config etc. in the
logs, which isn't adding any value in troubleshooting, but is making
reading logs _much_ harder.

This PR will print only the essential information to logs, concisely.
2024-03-19 20:08:09 +05:30
albinAppsmith
8f70909382
feat: Added unit test for query/js delete - next item selection (#31915)
## Description

This PR added unit test to validate getNextEntityAfterDelete

Fixes #31864

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8340217451>
> Commit: `81950b382c97f2634a44d9f64eef904104df8390`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8340217451&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**
- Improved internal handling of redirection after deleting an entity to
ensure a smoother user experience.
- **Tests**
- Added tests for better reliability in navigating between entities
after deletions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-19 15:17:49 +05:30
Abhijeet
3cdd2a97e6
fix: Filter Appsmith exceptions from feature flagged aspect to provide context based exception (#31913)
## Description
PR to provide more contextual exception when Appsmith exception is
thrown within method marked with `@FeatureFlagged`.

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8339550893>
> Commit: `e5a0be3166e7ede54240c8981683f61e09f506f8`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8339550893&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**
- Improved handling of specific exceptions during method invocations to
directly rethrow known exceptions for clearer error reporting.
- **Bug Fixes**
- Enhanced an error message in the system to provide more detailed
information about encountered issues.
- **Tests**
- Added new tests to verify the correct handling and messaging of
exceptions under different conditions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-19 14:33:55 +05:30
Hetu Nandu
65821394b7
chore: Add ability to enable feature flags in unit tests (#31914)
## Description

Allows you to pass feature flags when using the `render` function of
testing utils

```
const container = render(
  <Component />,
  { featureFlags: { release_my_feature_enabled: true } }
)

```

This will update the redux store with the flags values passed
2024-03-19 14:31:08 +05:30
Shrikant Sharat Kandula
54832b6ac3
ci: Fix TED tag 2024-03-19 14:29:27 +05:30
Nilesh Sarupriya
819d414e7a
chore: extend the update recently used workspaces to workflows and packages (#31738)
## Description
> [!TIP]  
> Code split the recently used workspaces code to other workspace
children

Fixes [[Task]: Workflows to get sorted based on recently used objects
per user in a
workspace](https://github.com/appsmithorg/appsmith/issues/30841)

## Automation

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

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


## Summary by CodeRabbit

- **New Features**
- Enhanced tracking for user interactions across applications,
workflows, and packages to improve the user experience.
- **Refactor**
- Updated user data service to support the new tracking feature,
ensuring a more personalized and efficient user interface.

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

---------

Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
2024-03-19 02:37:56 -05:00
Nirmal Sarswat
997326774b
chore: Add after delete hook for Appsmith AI datasource (#31466)
## Description
Created a pre delete hook to delete datasource files on Appsmith AI
server when datasource is deleted in Appsmith instance.

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

#### How Has This Been Tested?
- [x] Manual

## Automation

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

## 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
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] 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 new method `preDeleteHook` in the `PluginExecutor`
interface to serve as a hook after deleting a datasource.
- Added a new method `disassociateDatasource` in the AI plugin to notify
the AI server about datasource deletion and provide file context if
available.
- **Refactor**
- Enhanced the AI plugin by refactoring methods to use a new
`createAssociateDTO` method for generating `AssociateDTO` instances,
improving code readability and maintainability.
- **Chores**
- Updated the `archiveById` method in DatasourceServiceCEImpl to include
a `flatMap` operation that triggers a `preDeleteHook` method on the
plugin executor before archiving the datasource. Also added a new
private method `findPluginExecutor` for retrieving the plugin executor.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8338230830>
> Commit: `800915ea99c93663af34d08e8bcf4a14ad1356d0`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8338230830&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

<!-- end of auto-generated comment: Cypress test results  -->
2024-03-19 12:52:32 +05:30
Shrikant Sharat Kandula
821f179bec
chore: Remove ready banner (#31903)
Removing the banner, now that we have the starting page that shows up on
the browser itself, and unfortunately, the unicode characters in this
banner are screwing up some log aggregations systems. 🤦

[Slack conversation for more
context](https://theappsmith.slack.com/archives/C059R5RGFAN/p1710827561442049?thread_ts=1709690960.711109&cid=C059R5RGFAN).
2024-03-19 11:58:48 +05:30
Shrikant Sharat Kandula
7f56d70fb9
ci: Make TED image tag configurable (#31815)
With this, we should be able to set the image tag (`latest` or `nightly`
for example), to be used for the TED run for Cypress tests.

Unless we already have a different method to run Cypress with nightly
TED, this should give us that flexibility.
2024-03-19 11:57:59 +05:30
Vibhor Sharma
f14eabb074
fix: Updated the label for the "Auto play" property in the Audio Widget to "Autoplay" (#31668)
## Description
Renamed `Auto play` to `Autoplay` in Audi Widget's autoplay text to make
it consistent with `Autoplay` text in Video Widget.

Before: 
<img width="574" alt="image"
src="https://github.com/appsmithorg/appsmith/assets/12482554/9c7da195-e8c4-4f0a-8ca9-a86615ed7d57">

After: 
<img width="569" alt="image"
src="https://github.com/appsmithorg/appsmith/assets/12482554/f360e546-5ec3-4525-a3e8-91bd1dc06779">


Fixes #19488
2024-03-19 11:56:45 +05:30
Anagh Hegde
cc739d7afd
chore: migrate plugin repository class to use Bridge API (#31798) 2024-03-19 11:13:42 +05:30
Rudraprasad Das
621e719110
fix: removing unnecessary status api call (#31229)
## Description
Removing duplicate status API on opening modal

#### PR fixes following issue(s)

Fixes #31228


## Automation

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

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

- **Refactor**
- Improved the initialization process of Git status during deployment
and merge operations for enhanced performance.
- Optimized logging and code flow in the `getStatus` method for better
monitoring and troubleshooting.
- Introduced elapsed time logging for various operations within the
method.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8328565497>
> Commit: `b8138d55279aaa943e8d747286663c0d5c71d705`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8328565497&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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

---------

Co-authored-by: subrata <subrata@appsmith.com>
Co-authored-by: manish kumar <manish@appsmith.com>
Co-authored-by: manish <manish@manishs-MacBook-Pro.local>
Co-authored-by: sondermanish <sonder.manish@gmail.com>
2024-03-18 22:06:57 +05:30
Rishabh Rathod
fc453c8b5f
chore: Remove JS_VARIABLE_MUTATED event (#31884)
## Description
This PR removes logging of `JS_VARIABLE_MUTATED` event and related code.

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

> [!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.JS"

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

- **Chores**
- Removed unused analytics events and related code for tracking
JavaScript variable mutations to streamline the application's
performance and maintainability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 21:39:11 +05:30
Ashok Kumar M
f94ddcc0a7
chore: restructure WidgetsEditor (#31803)
## Description
In this PR we are restructuring the WidgetsEditor into multiple
components so that it is easy to assess changes.
currently the widgets editor just does too much at one place to even
understand what is happening.

This is also the first step in trying to decrease the number of places
where layout system type is being used to manipulate a functionality.

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  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8321642656>
> Commit: `afbe7fc015e4d7b098d5fb68db8eb17a730fde71`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8321642656&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**
- Introduced a comprehensive layout for the widget editor, including
header, content, and footer areas.
- Added `WidgetEditorContent` for orchestrating the main content area
with navigation and layout-based canvas editor.
- New `LayoutSystemBasedPageViewer` and `NavigationAdjustedPageViewer`
components for enhanced page display and navigation within the layout
system.
- Implemented `WidgetEditorContentWrapper` for managing content layout
and interactions within the widget editor.
    - Added `WidgetEditorNavigation` for improved navigation preview.

- **Refactor**
- Updated import paths across various components to reflect new project
structure.
- Significant restructuring of the `WidgetsEditor` component for better
efficiency and dependency management.

- **Documentation**
    - Added descriptive comments for the `CodeModeTooltip` component.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 21:14:11 +05:30
Anagh Hegde
997fd96dce
feat: captcha for invite user flow (#31715)
## Description
Add captcha for the invite user flow. 

Fixes https://theappsmith.slack.com/archives/CGBPVEJ5C/p1710134091696379
https://github.com/appsmithorg/appsmith/issues/31789

## Automation

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

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


## Summary by CodeRabbit

- **New Features**
- Integrated Google reCAPTCHA in the user invitation form to enhance
security during form submissions.
- **Enhancements**
- Improved handling of URL parameters in utility functions for more
robust data processing.

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

---------

Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
Co-authored-by: Ankita Kinger <ankita@appsmith.com>
2024-03-18 19:55:41 +05:30
Rishabh Rathod
e96eac489a
feat: add support for sectionStyles in datasource editor form (#31817)
## Description

In this PR, we add support for section styles in the datasource editor
form. This gives the ability to configure input in different layouts
like flex or block as required using CSS.

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

### Example

#### DB config
```
const DBConfig = [
  {
    sectionName: "Connection",
    id: 1,
    children: [
      {
        children: [
          {
            label: "Host address",
            configProperty: "datasourceConfiguration.endpoints[*].host",
            controlType: "KEYVALUE_ARRAY",
            validationMessage: "Please enter a valid host",
            validationRegex: "^((?![/:]).)*$",
            placeholderText: "myapp.abcde.arango.net",
          },
          {
            label: "Port",
            configProperty: "datasourceConfiguration.endpoints[*].port",
            dataType: "NUMBER",
            controlType: "KEYVALUE_ARRAY",
            placeholderText: "8529",
          },
        ],
      },
      {
        label: "Database name",
        configProperty: "datasourceConfiguration.authentication.databaseName",
        controlType: "INPUT_TEXT",
        placeholderText: "Database name",
        initialValue: "_system",
      },
    ],
  },
  {
    sectionName: "Authentication",
    id: 2,
    children: [
      {
        children: [
          {
            label: "Username",
            configProperty: "datasourceConfiguration.authentication.username",
            controlType: "INPUT_TEXT",
            placeholderText: "Username",
          },
          {
            label: "Password",
            configProperty: "datasourceConfiguration.authentication.password",
            dataType: "PASSWORD",
            controlType: "INPUT_TEXT",
            placeholderText: "Password",
            encrypted: true,
          },
        ],
      },
    ],
  },
  {
    id: 3,
    sectionName: "SSL (optional)",
    children: [
      {
        label: "SSL mode",
        configProperty: "datasourceConfiguration.connection.ssl.authType",
        controlType: "DROP_DOWN",
        initialValue: "DEFAULT",
        options: [
          {
            label: "Default",
            value: "DEFAULT",
          },
          {
            label: "Enabled",
            value: "ENABLED",
          },
          {
            label: "Disabled",
            value: "DISABLED",
          },
        ],
      },
      {
        sectionStyles: { display: "flex" },
        children: [
          {
            sectionStyles: { flex: 1 },
            children: [
              {
                label: "Use Client CA Certificate",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caCertificateType",
                controlType: "DROP_DOWN",
                initialValue: "NONE",
                options: [
                  {
                    label: "Disabled",
                    value: "NONE",
                  },
                  {
                    label: "Upload File",
                    value: "FILE",
                  },
                  {
                    label: "Base64 String",
                    value: "BASE64_STRING",
                  },
                ],
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.authType",
                  comparison: "NOT_EQUALS",
                  value: "ENABLED",
                },
              },
              {
                label: "Client CA Certificate File",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caCertificateFile",
                controlType: "FILE_PICKER",
                encrypted: true,
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.caCertificateType",
                  comparison: "NOT_EQUALS",
                  value: "FILE",
                },
              },
              {
                label: "Base64 Encoded Client CA Certificate String",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caCertificateFile.base64Content",
                controlType: "INPUT_TEXT",
                dataType: "PASSWORD",
                encrypted: true,
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.caCertificateType",
                  comparison: "NOT_EQUALS",
                  value: "BASE64_STRING",
                },
              },
            ],
          },
          {
            sectionStyles: { flex: 1 , marginLeft: "20px"},
            children: [
              {
                label: "Use Server CA Certificate",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caServerCertificateType",
                controlType: "DROP_DOWN",
                initialValue: "NONE",
                options: [
                  {
                    label: "Disabled",
                    value: "NONE",
                  },
                  {
                    label: "Upload File",
                    value: "FILE",
                  },
                  {
                    label: "Base64 String",
                    value: "BASE64_STRING",
                  },
                ],
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.authType",
                  comparison: "NOT_EQUALS",
                  value: "ENABLED",
                },
              },
              {
                label: "Client CA Certificate File",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caServerCertificateFile",
                controlType: "FILE_PICKER",
                encrypted: true,
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.caServerCertificateType",
                  comparison: "NOT_EQUALS",
                  value: "FILE",
                },
              },
              {
                label: "Base64 Encoded Client CA Certificate String",
                configProperty:
                  "datasourceConfiguration.connection.ssl.caServerCertificateFile.Base64Content",
                controlType: "INPUT_TEXT",
                dataType: "PASSWORD",
                encrypted: true,
                hidden: {
                  path: "datasourceConfiguration.connection.ssl.caServerCertificateType",
                  comparison: "NOT_EQUALS",
                  value: "BASE64_STRING",
                },
              },
            ],
          },
          {
            sectionStyles: { flex: 1 },
            children: [],
          },
        ],
      },
    ],
  },
];
```

#### Screenshot 


![image](https://github.com/appsmithorg/appsmith/assets/23132741/efd1c5d6-a9ed-4343-a6d4-c6358eed8369)


## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8287804061>
> Commit: `a501af69f04c4fe995aaa8120315668bef070cc5`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8287804061&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**
- Enhanced visual presentation of forms generated from JSON data with
customizable section styles.

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

Before

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

After

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



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

## Summary of changes

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

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

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-18 11:48:29 +03:00
Apeksha Bhosale
9eba768a90
chore: added tag module for module related tests (#31790)
## 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._


https://github.com/appsmithorg/appsmith-ee/pull/3575#discussion_r1524187262

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

## Automation

/ok-to-test tags=""

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

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

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

## Summary by CodeRabbit

- **Tests**
- Enhanced test categorization by adding the `@tag.Module` tag for more
precise test filtering.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 12:48:54 +05:30
Rajat Agrawal
129b062fac
chore: Chore/conditional eval trigger (#31487)
Fixes #31190

## Automation

/ok-to-test tags="@tag.All"<!-- This is an auto-generated comment:
Cypress test results -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8296786849>
> Commit: `e17d78e04a1f4fe0539325316400b8378bb08995`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8296786849&attempt=3"
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 JavaScript function execution to include an `onPageLoad`
parameter, enabling actions to be triggered upon page load.
- **Enhancements**
- Improved logging for widget panel configurations and key differences
in objects for better debugging and analysis.
- **Refactor**
- Updated evaluation handling to conditionally execute based on page
load, optimizing the data tree evaluation process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 12:48:24 +05:30
Rajat Agrawal
6bdfb7edac
chore: Remove analytics logging of JS functions as it causes a performance b… (#31663)
…ottleneck

Fixes #31160

## Description
> [!TIP]  
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._

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

## Automation

/ok-to-test tags=""

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

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

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


- **Refactor**
	- Improved analytics tracking by refining the analytics codebase.
	- Removed unused imports and functions related to analytics.
- Refactored the `logDynamicTriggerExecution` function for better
performance.
- Eliminated the usage of `logJSFunctionExecution` function in the
`handleEvalWorkerMessage`.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-18 11:50:13 +05:30
Nikhil Nandagopal
1121a839bc Updated Label Config 2024-03-16 00:19:06 +05:30
Nikhil Nandagopal
b33b4a88c3
Update config.json 2024-03-15 18:45:49 +05:30
Rudraprasad Das
e30f66923a
fix: fixing redirect from ds modal after import (#31834)
## Description
Redirection issue on DS Reconfigure modal after user imports the
application

## Automation

/ok-to-test tags="@tag.Fork,@tag.ImportExport"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8295348027>
> Commit: `16953d533498713ec3e3eefb943614b20bdd5b95`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8295348027&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**
- Improved the redirection logic in the `ReconnectDatasourceModal` to
ensure users are navigated correctly based on their current application
context.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 17:40:30 +05:30
Nikhil Nandagopal
d8b0deb7d5 Updated Label Config 2024-03-15 17:09:08 +05:30
Hetu Nandu
508015a603
chore: Have a failsafe for split screen if we turn off the feature flag (#31832)
## Description
Adds a failsafe for Split screen feature when flag is turned off



## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8294997501>
> Commit: `434c36e595e46c378b58fa14bd1c9d04a3bfd119`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8294997501&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**
- Introduced an `Editor View Mode` option to enhance user interface
customization based on feature availability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 16:47:48 +05:30
Hetu Nandu
bbe6f2d8f3
fix: remove counter of cmd + click navigation usage (#31830)
## Description

Fixes the blocker issue for canvas resize by removing the counter of cmd
+ click as that goes to local storage and that is somehow causing this
issue


Fixes #31820

## 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/8293559664>
> Commit: `00eee43d89c9df1071a3a1daca449629e48386ca`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8293559664&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**
- Improved the widget selection process by streamlining the tracking and
storage method within the application.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 15:24:26 +05:30
Hetu Nandu
ad54bfcd45
chore: Add Create as a Widget SelectionRequestType (#31799)
## Description

Adds a `SelectionRequestType.Create` and enhance `widgetUrl` to have add
view. When `Create` is selected, it will navigate to the `widgetUrl`
with add view

Fixes #30578

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8292718827>
> Commit: `231b88cc2c070f9286558b05e36bb1e0b84c7817`
> Cypress dashboard: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8292718827&attempt=1&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank"> Click here!</a>
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts
</ol>
> To know the list of identified flaky tests - <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">Refer 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 URL building capabilities to support additional view options
in the app.
- Improved widget selection process to facilitate easier addition and
manipulation of widgets on the canvas.

- **Refactor**
- Updated selection logic to include a new `Create` selection type,
streamlining the process of adding new widgets.

- **Chores**
- Internal updates to support the new selection type across different
components and sagas.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 14:57:06 +05:30
Nilansh Bansal
56936866e1
fix: trigger instance re-registration if not already registered (#31610)
## Description

Ref:
https://theappsmith.slack.com/archives/C040LHZN03V/p1700206435426579
## Background 
At the start of the new appsmith server, we register the instanceId with
cloud services by invoking the cloud services api. For some of the
instances, if this register api call didn't go through, the cloud
services db will not have the instanceId.

While connecting to GSheets, we do a check if the request is coming from
a valid registered instance, and if it is not present this api fails.

The appsmith mongo database config collection, keeps a record of whether
this instance was registered or not.
In some scenarios, the appsmith_registered field shows that the instance
is registered but it is not as instanceId is missing in CS, i.e. the
appsmith server has the info that the instance is registered with CS but
the CS db has not registered the instance.

> This PR triggers the re-registration flow to the cloud services if the
instance is not registered.
> When calling the google sheets API to cloud services, if the response
received is 403 FORBIDDEN, it indicates the instance is not registered,
in which scenario we retrigger the registeration flow and call the CS
again.

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

#### Media
> DEMO

https://drive.google.com/file/d/1cVluIAQlzxwb7A2bgBBMJ0I4awSV6fKp/view?usp=sharing
#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?

- [x] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress


## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] 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

## Automation

/ok-to-test tags=""

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

<!-- end of auto-generated comment: Cypress test results  -->
2024-03-15 14:31:35 +05:30
balajisoundar
e20cf7d2b3
fix: [map chart widget] create unique instance of map loader per widget to avoi… (#31822)
…d cross cancelling loader calls

## Description
Create an instance of map loader per widget to avoid one widget
cancelling calls of another widget.


Fixes https://github.com/appsmithorg/appsmith/issues/31819
## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8292557044>
> Commit: `cd13c989d8b911a064629bf1d8c683e09927d3b2`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8292557044&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**
- Enhanced the Map Widget to load maps more efficiently with the
introduction of `loadMapGenerator`.
- **Tests**
- Added Cypress tests to ensure the Map Widget loads correctly on the
canvas.
- **Refactor**
- Updated the Map Widget loading process for better performance and
flexibility.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-15 13:17:11 +05:30
Pawan Kumar
fbfbdd34d6
fix: missing config in wds widgets (#31661)
Fixes #31223 

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

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

- **New Features**
- Introduced configuration settings for Button, IconButton, Input,
Checkbox Group, Currency Input, Phone Input, Radio Group, Stat Box,
Table, and Toolbar Buttons widgets, enhancing customization options such
as size, visibility, text, disabled state, and more.
- **Refactor**
- Reorganized and consolidated import paths and references across
various widgets for improved code maintainability and readability.
- **Chores**
- Updated and restructured configuration files and imports for a more
streamlined development experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai
--><!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8279902037>
> Commit: `0068765c0d77086462af64c334d64c5e7ee8036b`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8279902037&attempt=2"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉

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

---------

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro-2.local>
2024-03-15 13:07:17 +05:30
Aman Agarwal
c302c724d8
chore: removed onboarding flags ab_create_new_apps_enabled , ab_start_with_data_default_enabled (#31384) 2024-03-15 11:13:14 +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
c4c01beb20
Update CODEOWNERS (#31788) 2024-03-14 20:08:23 +05:30
Trisha Anand
05f9dcb9e6
fix: Making userTag a hidden field to not expose it as a user configurable option with Appsmith being the default value (#31792)
This is to abide by the Databricks standard practice which expects the
user agent tag to be set automatically and shouldnt be configurable by
end user (in this case developers creating datasources on top of
Databricks). The user agent tag would be set to Appsmith.
2024-03-14 16:18:44 +05:30
Hetu Nandu
3c59066b89 fix: Query Sorting control width 2024-03-14 15:21:54 +05:30
Ankita Kinger
7b19b3d351
fix: Refactoring fetching of icon for module instances (#31765) 2024-03-14 14:31:44 +05:30
albinAppsmith
0ac0bd8b77
fix: Split pane JS setting overflow (#31782) 2024-03-14 13:52:03 +05:30
Manish Kumar
fbdb1d655c
chore: ce split for permission scoping for CD (#31761) 2024-03-14 12:56:28 +05:30
albinAppsmith
9574bd7587
fix: updated add navigation hooks to solve EE issue (#31751)
## Description

Fixed add navigation issue when using query package.

Fixes #31478

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!IMPORTANT]  
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8275832758>
> Commit: `e5c12a51fe0e849f75a776755113ca08a55c89bd`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8275832758&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**
- Enhanced flexibility in specifying URL functions for JavaScript and
Query additions in the editor.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-14 12:56:03 +05:30
Shrikant Sharat Kandula
89f3107621 Revert "chore: Add separate request/response views (#31640)"
This reverts commit 4cdbe89586.
2024-03-14 11:56:59 +05:30
Shrikant Sharat Kandula
41a66a1168
chore: Tiny NodeJS script as a linter for field name constants (#31766)
The point is to prevent unfortunate field name problems like this:
https://github.com/appsmithorg/appsmith/pull/31760/files.

This NodeJS script does a very rudimentary analysis on all Java files,
with a few regular expressions, and finds anomalies. As such, since it's
not very smart, it's quite strict. I intend to make it a little more
strict in the coming days, but it's a start.

It's not hooked into any processes/CI yet, but that will also come in
next. Since it's not very smart, it actually runs quite fast (.8s on
EE).

The script also doesn't exit with a non-zero exit code when it finds a
problem. Also will be solved as part of integrating it into CI.
2024-03-14 06:30:40 +05:30
Shrikant Sharat Kandula
f3c0673822
fix: Incorrect field constants (#31760) 2024-03-13 20:44:53 +05:30