Commit Graph

803 Commits

Author SHA1 Message Date
Hetu Nandu
a4dec4bb6e
feat: Update order of action file operations (#22754)
## Description

In order to improve new user experience, we want to update the order of
items listed in the new action list. This will show app datasources
higher in the order and generic creation action lower in the order.
Create JS objects is still listed on the top.
This also will update the list sorting on the omni bar.

<img width="524" alt="Screenshot 2023-04-26 at 3 49 31 PM"
src="https://user-images.githubusercontent.com/12022471/234547215-c15c8f12-7be1-4462-8b78-190e7dc75dea.png">

<img width="513" alt="Screenshot 2023-04-26 at 3 53 39 PM"
src="https://user-images.githubusercontent.com/12022471/234547574-46308912-28de-49f7-a3bf-f872def42adb.png">


> Improve the order of action create list

Fixes #22618

## Type of change

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


## How Has This Been Tested?

Extracted the function and adding some jest cases for the functionality 

- Manual
- Jest
- Cypress

### Test Plan
TBA

### Issues raised during DP testing

https://github.com/appsmithorg/appsmith/pull/22754#issuecomment-1527503666


## 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-08 14:43:23 +05:30
Dhruvik Neharia
9d5e2e0246
feat: App navigation - Logo upload (#22297)
## Description

Allowing users to upload a logo to show in the navigation along with
toggles to hide logo or application title.

Fixes #20134
Fixes #21946
Fixes #22260

## Media
<video
src="https://user-images.githubusercontent.com/22471214/235613131-129ac2ed-b994-4eab-8eba-7db297c2f7fd.mp4"><video>

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

## How Has This Been Tested?
- Manual

### Test Plan
> https://github.com/appsmithorg/TestSmith/issues/2376

### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-05 12:19:20 +05:30
Anand Srinivasan
bd2cc8d612
fix: display picture - prevent invalid files (#22900)
## Description

When selecting a display picture, show alert on selecting invalid file
type.
e.g. when you rename a pdf file to png and try to upload it

Design system changes:
https://github.com/appsmithorg/design-system/pull/466

Fixes #22592

Media
https://www.loom.com/share/f8971769aaad422fb86c6b02306102ce


## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- Cypress
- Manual

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-04 11:26:17 +05:30
Ravi Kumar Prasad
636d1839c7
fix: this.params shows error in IIFE (#22683)
## Description
This fixes the issue where using `this.params` in an IIFE function in
API query params showed error.

**How does this PR fix the issue?**
The PR adds an empty object as `params` in the global `this` context. So
that `this.params` doesn't evaluate to `undefined`.

Fixes #6732

Media
<img width="1182" alt="Screenshot 2023-04-25 at 12 59 36 AM"
src="https://user-images.githubusercontent.com/13567359/234096780-661be709-d5fc-40ed-800f-d5014c2da062.png">



## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- 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
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-03 12:38:39 +05:30
Keyur Paralkar
bced70d0f2
fix: column order of frozen columns when query changes (#22691)
## Description

This PR focuses on reordering the frozen columns when the query changes.
With this PR, we intend to retain the position of the frozen columns.

Fixes #21154

## Type of change

- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?

- Manual
    - Order of the unfrozen common columns should appear as expected. 
    - Column order of common columns should work as expected as before
- Cypress
    - Frozen custom columns should retain the position on query change
    - Custom common columns should retain the position on query change
- Frozen column should remain frozen and unfrozen column should come
first when query changes
    - The order of the frozen columns should remain the same.
- When 2 common columns, one is frozen to left, other is unfrozen, then
post query change, unfrozen comes after frozen
    
### Test Plan
> https://github.com/appsmithorg/TestSmith/issues/2164

### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [x] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-03 11:56:08 +05:30
Vijetha-Kaja
1326d110f1
test: Cypress - Fix Flaky Tests (#22604)
## Description

**Fixed below flaky tests**

- CommunityIssues_Spec.ts
- Autocomplete_JS_spec.ts
- Tab_spec.js
- API_Search_spec.js
- LeaveWorkspaceTest_spec.js
- Increased timeout in EnableGoogle_spec
## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-05-02 23:19:42 +05:30
Rajat Agrawal
58fea85a38
chore: Add rapid mode to skip new app creation in cypress test (#22854)
Fixes #22878

This pr adds a flag called 'rapidMode' in cypress index file.

```
cypress/support/index.js

let rapidMode = {
  enabled: false, // Set it to true to skip app creation during a test re-run
  appName: "4a9b62a0", // Replace it with your app name
  pageName: "page1", // Replace it with the page name
  pageID: "644f8d6e21506c33a366854b", // Replace it with pageID

  url: function () {
    return `app/${this.appName}/${this.pageName}-${this.pageID}/edit`;
  },
};
```
When rapid mode is enabled, the cypress test will

1. Skip relogin if the test user is already logged in.
2. Skip creation of a new app and use a previously created app, passed
as param.

The flag needs to be disabled when the code needs to be merged to
release, and is meant for debugging/testing while writing tests on local
development setup only.

When enabled, a cypress test saves around 25 sec per rerun.

Future fixes would include skipping multiple workspace page visit if a
developer is using dsl for setting up fixtures. It would save around
another 10-15 seconds per test re-run.
2023-05-02 16:17:23 +05:30
akash-codemonk
bdab68c2ff
feat: signposting stickiness (#22088) 2023-05-02 15:22:05 +05:30
Ravi Kumar Prasad
8e7d2024fe
fix: cursor position not between parenthesis for function autocomplete (#22694)
## Description
When using autocomplete suggestion, earlier on selecting a function the
cursor was placed at the end of the parenthesis forcing the user to
press one more key (left arrow) before filling the arguments. Now the
cursor is placed right between the parenthesis.

Fixes #20449 

## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- 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
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-28 15:33:12 +05:30
Ravi Kumar Prasad
7926a89505
feat: Add support for tab in autocompletion (#22653)
## Description
This adds the ability to select an option from the autocomplete
suggestions list using the `Tab` key while writing code. Earlier, users
could use only the `Enter` key to do so. All code editors support `Tab`
for autocomplete.

Fixes #20448 

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


## How Has This Been Tested?
- Cypress

### Test Plan
[Test Plan](https://github.com/appsmithorg/TestSmith/issues/2377)

### 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
- [x] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-28 15:32:40 +05:30
Hetu Nandu
3408729df9
feat: Open doc links in a new tab (#22613)
## Description

When user clicks on a docs link, open the docs in a new tab instead of
the omnibar.

Fixes #22409


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)


## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important

- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-26 16:03:13 +00:00
Aishwarya-U-R
fc808ea3bb
test: Cypress - Automated Basic tests for Redis datasource (#22734)
## Description

- This PR includes tests for Redis datasource - basics tests with
querying in query page


## Type of change

- New script


## How Has This Been Tested?
- Cypress CI runs

## Checklist:

### QA activity:
- [x] Added Test Plan Approved label after reviewing all Cypress test
2023-04-25 23:54:36 +05:30
Aishwarya-U-R
c55bebbbee
test: Cypress - fix for ExplorerTests/Admin_settings_spec.js (#22686)
## Description

- This PR fixes the flaky ExplorerTests/Admin_settings_spec.js in CI
runs

## Type of change

- Script update

## How Has This Been Tested?
- Cypress local run

## Checklist:


### QA activity:
- [ ] Added Test Plan Approved label after reviewing all changes
2023-04-25 03:23:36 +05:30
Ankita Kinger
3d41a37590
chore: Updating permission check for share modal to invite users (#22396)
## Description

Updating permission check for share modal to invite users

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

## Type of change
- Chore (housekeeping or task changes that don't impact user perception)


## How Has This Been Tested?
- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Dipyaman Biswas <dipyaman@appsmith.com>
2023-04-21 18:53:05 +05:30
arunvjn
e2224ae01d
chore: code splitting changes for appsmith ai v0.1 (#22521)
## Description
This PR only contains interfaces for the EE AI feat. These are temporary
changes

## Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## How Has This Been Tested?
- Manual

### 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] New and existing unit tests pass locally with my changes
- [x] My changes generate no new warnings
- [ ] I have made corresponding changes to the documentation
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-20 20:42:35 +05:30
Ankita Kinger
2e08a913a7
feat: Updating invite modal & app settings for SSO embedding to introduce private app embedding (#22279)
## Description

Updating invite modal and app settings for SSO embedding to introduce
upgrade content for private apps. This is being done to introduce
private embedding SSO in invite modal and app settings for Business
Edition.

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

## Type of change

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

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Dipyaman Biswas <dipyaman@appsmith.com>
2023-04-20 17:55:32 +05:30
Rajat Agrawal
ba7099ce00
fix: Sorting by renamed custom column (#22405)
Fixes #19928 

Steps to repro:

1. Add a custom column named `customColumn1` to a table.
2. Modify the computed value for it to `{{currentIndex}}`.
3. Ensure that sorting is working for the table using `customColumn1`.
4. Go to property pane settings for this column and rename it to
`customColumn2` from its title in the property pane.
5. Ensure that sorting is working using `customColumn2`.

Actual Behavior:
Sorting isn't working using `customColumn2`.

Expected Behavior:
Sorting should work using `customColumn2`.
2023-04-20 12:11:38 +05:30
Anand Srinivasan
9af64f7310
test: handle login success & errors properly (#22524)
Fixes #22537

- [x] check for test failures in CE & EE
- [ ] check for merge conflicts in EE (index.js)

## Description

cy command : `LoginFromAPI`

We were calling the login API as a XHR call and navigated to
`/applications` manually in cases where login has actually failed.

Login success & errors are now handled properly.
- Now it will behave like submitting a form.
(https://docs.cypress.io/api/commands/visit#Submit-a-form)
- Performs navigation to `/applications` automatically on login success.
- Performs navigation to `/login?error=true` automatically on login
failure.
- Added origin as a header.


## Media
Before: (navigates to /application even when login fails)
https://www.loom.com/share/086ef8c743ab460194b785a4d22e87cf

Now: (stops when login fails)
https://www.loom.com/share/cc78be2ee2944d0ab9f094f8fd709539


## Type of change
- Chore (housekeeping or task changes that don't impact user perception)


## How Has This Been Tested?
- Cypress


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
2023-04-19 15:20:54 +05:30
Aishwarya-U-R
b21d23fac3
test: Cypress - flaky fixes the before hook failures due to redirect login (#22520)
## Description

- This PR adds validation to check the logout happened successfully
before login can happen via api

Fixes #22261

## Type of change

- Script fix (non-breaking change which fixes CI failure issue)

## How Has This Been Tested?
- Cypress CI runs


## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all changes
2023-04-19 15:07:39 +05:30
ashit-rath
27fe4d74e2
fix: List v2 child widgets event defined with action selector (#22418)
## Description

TL;DR
For list widget's child widget, when events like `onClick` were defined
using the action selector, it throws syntax error.

Reason:
Underneath the hood the new action selector by default applies a
semi-colon (`;`) at the end of every action selected. This does not play
well with the List v2 as the widget adds a wrapper on top of this action
which leads to a syntax error.

Fix:
 For trigger paths the binding is ow enclosed with `{ }`
 where as the binding paths are not enclosed with `{ }`

 Example
```js
 (() => { showAlert("Hello") })() // For trigger paths
 (() => currentItem.name )() // For binding paths
```

It is expected for binding paths to return a value from the binding so
to make it return by default js binding cannot be wrapped around `{ }`.

In case of trigger paths, it is not expected for the js binding to
return anything but only execute other actions. When wrapped around `{
}`, it gives an advantage when action selectors are used to define a
trigger/event. Action selectors by default adds a semi-colon(;) at the
end of every action. If the wrapper `{}` is not present then a binding
```
  (() => showAlert("Hello"); )()

```
would throw an error as the addition of a semi-colon is an invalid
JavaScript syntax.
  Hence we convert the above IIFE to 
```
(() => { showAlert("Hello"); } )()
```
 to make the semi-colon work.

Fixes #22373

## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- 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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Rimil Dey <rimil@appsmith.com>
2023-04-17 11:52:01 +05:30
NandanAnantharamu
fea88972fc
test: Tests for auto conversion and mobile viewport (#21931)
covered use-cases documented in 

https://www.notion.so/AutoLayout-cypress-tests-b66ef64b1d6543fb80264358f320d27c

---------

Co-authored-by: Arsalan Yaldram <arsalanyaldram0211@outlook.com>
Co-authored-by: Aswath K <aswath@appsmith.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Preet <preetsidhu.bits@gmail.com>
Co-authored-by: Nandan <nandan@thnikify.io>
2023-04-14 17:03:50 +05:30
Rajat Agrawal
30f3d250c4
fix: Table Widget property to specify if prev or next buttons were pressed (#21712)
We have added two new boolean meta properties, previousPageVisited and
nextPageVisited, that are set whenever respective pagination button is
clicked. This property is updated for server side pagination mode as
well as non server side pagination mode.

By default, both properties are set to false.

When the user clicks on previous page button or tries to enter a page
number which is less than current page number, `previousPageVisited` is
set to `true` and `nextPageVisited` is set to `false`.

The users can use these property as follows in their code : 

```
myFun1: () => {
		if (Table1.nextPageVisited == true){
			NextQuery.run()
		}
		else if (Table1.prevPageVisited == true){
			PrevQuery.run()
		}
		else {
			BaseQuery.run()
		}
	}
```
2023-04-13 15:38:46 +05:30
ChandanBalajiBP
24a1ff88cb
fix: Error navigation blockers (#22291)
## Description

> Remove debugger from preview mode
> Remove debugger in welcome tour
> Don't open debugger on `onpageload` action.


Fixes #22283 
#22281 
#22275 

## Type of change

> Please delete options that are not relevant.

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-12 22:38:55 +05:30
Aishwarya-U-R
a49043c478
test: Cypress - Flaky fix (#22263)
## Description

- This PR adds timeout for the EntityExpand() - to solve all the recent
issue seen with Expanding of Entity Explorer items - either after
refresh/page load/from view to edit mode navigations

## Type of change

- Script update (non-breaking change which fixes CI timeout issues with
EntityExplorer click)


## How Has This Been Tested?
- Cypress CI run

## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all Cypress test
2023-04-12 00:34:32 +05:30
Aishwarya-U-R
d2ced601d2
test: Cypress - Flaky fix (#22257)
## Description

- This PR fixes the Entity Explorer expand issue with the follow specs:
- /ThemingTests/Basic_spec.js
- /Button/Button_onClickAction_spec.js
- /Params/PassingParams_Spec.ts

## Type of change

- Script fixes


## How Has This Been Tested?
- Cypress local run

## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all changes
2023-04-11 12:51:14 +05:30
Aishwarya-U-R
00695e0600
test: Cypress - Flaky fix (#22248)
## Description

- This PR fixes below flaky test in CI - by improving the
EnterActionValue() agHelper metod:
- setInterval_spec.js


## Type of change

- Script fix (non-breaking change which fixes CI failure)


## How Has This Been Tested?

- Cypress local run

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-04-11 01:24:10 +05:30
ChandanBalajiBP
9a42ca9707
feat: Error Navigation (#21753)
## Description

> 

```
const isOnCanvas = matchBuilderPath(window.location.pathname);
    if (isOnCanvas) {
      dispatch(showDebuggerAction(!showDebugger));
}}
```
The condition check to verify if we are on canvas was removed as we are
opening debugger throughout all pages.

> Now debugger is accessible from all pages in Appsmith. (Earlier it was
not present in Datasources pages.)

Fixes #19567 
#21935 
#21934 
#21907 
#21223

Media
> [Video](https://www.loom.com/share/ff5eebb5e0a74e0bad6ead26050b5833)


## 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)


## How Has This Been Tested?

- Manual
- 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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-10 18:29:14 +05:30
Ravi Kumar Prasad
6ac99037b0
feat: Action selector (#21582)
## Description
Replaces the old boring action selector dropdown with a much more
sophisticated UI that is capable of going above and beyond. Users with
an aversion to code can now build their more complex workflows with a
click of a few buttons.

Consider this code snippet 
```javascript
Api1.run(() => {
  showAlert("Hello");
  navigateTo('Page1', {}, 'SAME_WINDOW');
}, () => {
  removeValue("test");
});
```
|**Old action selector** |**New action selector**|
|:-:|:-:|
|<img width="250" alt="Screenshot 2023-03-29 at 16 54 14"
src="https://user-images.githubusercontent.com/32433245/228520661-a639b580-8986-4aec-a0f5-e2786d1a0f56.png">|
<img width="250" alt="Screenshot 2023-03-29 at 16 55 15"
src="https://user-images.githubusercontent.com/32433245/228521043-5025aa42-af95-4574-b586-bc4c721240bc.png">|

**Click on an action block to edit its parameters.**
<img width="500" alt="Screenshot 2023-03-29 at 17 01 18"
src="https://user-images.githubusercontent.com/32433245/228522479-493769d0-9d2c-4b67-b493-a79e3bb9c947.png">

**Switch to JS mode to get the raw code**
<img width="273" alt="Screenshot 2023-03-29 at 17 05 51"
src="https://user-images.githubusercontent.com/32433245/228523458-13bc0302-4c94-4176-b5aa-3ec208122f57.png">

### Code changes
**New UI components**
  - ActionCreator component splits the code into block statements.
  - Each block statement is represented by ActionTree.tsx UI component.
  - ActionTree.tsx represents an action and its chains.
- ActionCard.tsx is the block that represents the individual action on
the UI.
- ActionSelector.tsx component is popover that contains the form for
editing individual action.
- TabView, TextView, SelectorView, ActionSelectorView and KeyValueView
are components that represent configurable fields in ActionSelector
form.
  
**AST methods**
  - Added methods to get/set function names, expressions, arguments.
- Added methods to get/set then/catch blocks to allow chaining of
actions.
  - Added methods to check if code is convertible to UI.

Fixes #10160
Fixes #21588 
Fixes #21392
Fixes #21393
Fixes #7903
Fixes #15895
Fixes #17765
Fixes #14562

Depends on https://github.com/appsmithorg/design-system/pull/306

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

## How Has This Been Tested?
- Manual
- Jest
- Cypress

### Test Plan
https://github.com/appsmithorg/TestSmith/issues/2296

### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)

## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [x] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [x] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Rimil Dey <rimil@appsmith.com>
Co-authored-by: arunvjn <arun@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
2023-04-06 22:19:12 +05:30
Aishwarya-U-R
f51c25f8e6
test: Cypress - EntityExplorer ExpandCollapse() improvement (#22149)
## Description

- This PR improves the ExpandCollpase() method - so the Expand method
does not fail in CI

## Type of change

- Script fixes

## How Has This Been Tested?

- Cypress CI runs

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-04-06 16:32:20 +05:30
Aishwarya-U-R
ca6ab330c5
test: test: Cypress - Automated tests for Elasticsearch datasource (#22101)
## Description

- This PR includes tests for Elastic Search datasource - with querying &
usage of various fields in the query page

## Type of change

- New script

## How Has This Been Tested?

- Cypress local/CI runs

## Checklist:

### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-04-06 09:37:04 +05:30
Ankita Kinger
c3f7d6c0cf
fix: Adding a permission check for creating new datasource on generate page (#22085)
## Description

Adding a permission check for creating new datasource on generate page.
When a custom role is assigned in GAC, where the user doesn't have
access to create a new datasource, in spite of that the create new
datasource option is showed in the dropdown on generate page with data.
This is fixed with this PR.

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

## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
> Tested it manually and it works fine.

- Manual

## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-05 17:22:43 +05:30
Aishwarya-U-R
83ea3c04cf
test: Cypress - Automated tests for Firestore datasource (#22057)
## Description

- This PR includes tests for Firestore ds - with querying & usage of
various fields in the query page

## Type of change

- New script

## How Has This Been Tested?

- Cypress CI runs

## Checklist:

### QA activity:
- [ ] Added Test Plan Approved label after reviewing all changes
2023-04-04 21:26:57 +05:30
Favour Ohanekwu
b80b0ca3fa
feat: show lint errors in async functions bound to sync fields (#21187)
## Description

This PR improves the error resolution journey for users. Lint warnings
are added to async JS functions which are bound to data fields (sync
fields).

- JSObjects are "linted" by individual properties (as opposed to being
"linted" as a whole)
- Only edited jsobject properties get "linted", improving jsObject
linting by ~35%.(This largely depends on the size of the JSObject)
<img width="500" alt="Screenshot 2023-04-03 at 11 17 45"
src="https://user-images.githubusercontent.com/46670083/229482424-233f3950-ffec-46f5-8c42-680dff6a412f.png">
<img width="500" alt="Screenshot 2023-03-14 at 11 26 00"
src="https://user-images.githubusercontent.com/46670083/224975572-b2d8d404-aac6-43fb-be14-20edf7c56117.png">
<img width="500" alt="Screenshot 2023-03-14 at 11 41 11"
src="https://user-images.githubusercontent.com/46670083/224975952-c40848b1-69d8-489d-9b62-24127ea1a2f1.png">

Fixes #20289
Fixes #20008


## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- CYPRESS
- JEST

### 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:
- [ ] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-04-03 16:11:15 +05:30
akash-codemonk
adb6938e88
fix: keep sidebar open when any context menu is open (#21777) 2023-03-31 20:01:08 +05:30
Ankita Kinger
778922bd74
chore: Updating tests which will fail on app invites getting merged (#21949)
## Description

> Updating tests which will fail when app invites are merged on EE.
Along with that, updating permission check for the invite modal content
on app level.

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

## Type of change

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

## How Has This Been Tested?
> Ran the cypress tests on local and it works fine.

- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-31 17:07:09 +05:30
Hetu Nandu
c058e29030
chore: Add new navigation scenarios for route change event (#21682)
## Description

Added following new events for gaps inside analytics
- ActionBackButton
- CanvasClick

Fixes #21417

## Type of change

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


## How Has This Been Tested?

- Manual

### Test Plan

### 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-30 11:03:29 +05:30
Nilansh Bansal
210a5a9eb8
fix: Login Redirection fixed for Authentication failure (#21495)
## Description
> This PR fixes the `redirectUrl` for the `/login` POST API in case of
an authentication failure.

Fixes #18670 

## Type of change

- Bug fix (non-breaking change which fixes an issue)



## How Has This Been Tested?

- Manual
https://github.com/appsmithorg/TestSmith/issues/2203

## 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
- [x] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Anand Srinivasan <anand.a.srinivasan@outlook.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-29 23:56:24 +06:00
Aishwarya-U-R
e7343d12ac
test: Cypress - Flaky fix (#21860)
## Description

- This PR fixes the welcome screen button click - which sometimes fails
the spec in before hook itself

## Type of change

- Script fix

## How Has This Been Tested?
- Cypress local run

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-03-29 15:12:29 +05:30
Aishwarya-U-R
05030959c3
test: Cypress - Automated tests for Basic Arango/Curl Import datasources (#21808)
## Description

- This PR includes tests for Arango ds - along with curl import &
querying & usage of various fields in the query page

## Type of change

- New script


## How Has This Been Tested?

- Cypress CI runs

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test

---------

Co-authored-by: Saroj <43822041+sarojsarab@users.noreply.github.com>
2023-03-29 01:37:07 +05:30
Ankita Kinger
c9e4f6a5ec
ci: Adding intercept for admin env API to send origin request header (#21814)
## Description

> Adding intercept for admin env API to send origin request header

Fixes # (issue)
> if no issue exists, please create an issue and ask the maintainers
about this first

## Type of change

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


## How Has This Been Tested?
> Ran analytics spec locally and tested it out to be successfully
completed.

- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-28 15:45:44 +05:30
Vijetha-Kaja
a6df101f45
test: Cypress - Added AdminSettings Helper (#21741)
## Description

- Supporting PR for the
[bug](https://github.com/appsmithorg/appsmith/issues/21046) automation
[script](https://github.com/appsmithorg/appsmith-ee/pull/1219) in EE
repo - Can be used for other admin settings scripts

## Type of change

- Admin settings helpers for automation scripts

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-27 15:06:03 +05:30
Aishwarya-U-R
e7bed2de14
test: Segment call interception conts., (#21763)
## Description

- This PR corrects the api request validation in case of the welcome
toggles left ON

## Type of change

- Script fix

## How Has This Been Tested?
- Cypress local run


## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-03-25 00:37:06 +05:30
Aishwarya-U-R
2bc6013b2c
test: Segment call interception cont., (#21762)
## Description

- Keeping the telemetry & Stay in touch toggles on which was missed in
previous merge


## Type of change

- Script update


## How Has This Been Tested?
- Cypress run local

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-03-24 23:12:49 +05:30
Aishwarya-U-R
413d430025
test: Cypress - Segment calls intercepted (#21726)
## Description

- This PR adds the host for segment calls as localhost as opposed to
sending it to Segment itself
- Diverting segment calls to Localhost for Cypress CI runs &
intercepting the response
- Updated to Analytics spec to validate the enableTelemtry false state
- Bug 21191, validation included
- Welcome screen - not toggling off the Usage Details anymore

## Type of change

- Yml file update
- Script updates


## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-03-24 21:36:48 +05:30
Vijetha-Kaja
f1779b4f63
test: Cypress - Fix Flaky Tests (#21755)
## Description

**Fixed below flaky tests**

- Listv2_Meta_Hydration_ServerSide_spec.js
- Listv2_dataIdentifierProperty_spec.js
- ListV2_PropertyPane_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-24 21:11:12 +05:30
Valera Melnikov
96c42d75d4
chore: improve husky and lint-staged checks (#21679)
## Description

1. Update husky, prettier and lint-staged then move them to
devDependencies
2. Configure husky and lint-staged
3. Impriove rules for the lint commands
4.  Fix errors of eslint and prettier. 
5. Remove redundant files

## Type of change


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


Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
2023-03-23 17:02:18 +05:30
Aishwarya-U-R
8f20f0980d
test: Cypress - Disabling back welcome screen triggers (#21728)
## Description

- This PR adds back the toggling off for telemetry & stay in touch
toggles. Adds wait for toggles to settle before clicking on the button.

## Type of change

- Script fix


## How Has This Been Tested?

- Cypress runs local

## Checklist:

### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-03-23 15:56:44 +05:30
Aishwarya-U-R
f52209c691
test: Cypress - Welcome screen - Before hook FailureFix - CI runs (#21714)
## Description

- This PR aims to fix the welcome screen button click failures seen
recently in CI runs

## Type of change

- Script fix


## How Has This Been Tested?

- Cypress local run


## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-03-23 14:11:09 +05:30
Hetu Nandu
c28bea180c
fix: Selected Widget Visibility (#21317)
## Description

### Part 3 of selected widget refactor

As part of context switching and selected widget refactor, we saw that
widgets that are inside modals or tabs and are hidden cannot be switched
to without updating some meta properties. The meta properties are
actually owned by the end user and the developer user would create some
default values for it as well. This becomes a problem soon when the
platform also tries to update it. So as part of this refactor, we will
use the selected widget ancestry (the chain of widgets from the top to
the currently selected widget) to handle if widgets need to be visible
or not. It will also indicate the widgets in the path of selection to
"make way" for the selected widget to be seen.

Media


https://user-images.githubusercontent.com/12022471/224916943-b10e8694-0c95-4157-bb93-288d7c0bf60a.mov

- This works on any number of levels of hirarchy
- The logic is supposed to handled by each widget that can potentially
hide other widgets inside it
- Improves some platform perf as the handing so widget meta is not done
by the platform anymore

Affected widgets:
- Modal Widget
- Tabs Widget

> tl;dr: Update the platform's way to show widgets that can be hidden.
Makes sure a selected widget is always shown.

Fixes #1282
Resolves #18173


## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- Manual
- Cypress

### Test Plan
> Test case link:-
[#2202](https://github.com/appsmithorg/TestSmith/issues/2202)

### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity:-
https://github.com/appsmithorg/appsmith/issues/1282#issuecomment-1472204952


## 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
- [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:
- [x] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-23 11:13:07 +05:30
Vijetha-Kaja
e7573eadf2
test: Cypress - Fix flaky tests (#21614)
## Description

**Fixed below flaky tests**

- Listv2_Meta_Hydration_ServerSide_spec
- RegenerateSSHKey_spec

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-22 01:54:32 +05:30
Aishwarya-U-R
4d5d482499
test: Cypress - Updating to TED Random api (#21615)
## Description

- This PR converts pagesize spec from js to to ts helpers.
- Moves the below spec from using catfact external api to TED internal
catfact api
JSOnLoad1_Spec.ts
- Connection_spec.js

## Type of change

- Script fix


## How Has This Been Tested?

- Cypress run - CI + local

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-22 01:22:39 +05:30
Aishwarya-U-R
cdce7ce51a
test: Cypress - flaky fix (#21585)
## Description

- This PR fixes the below flaky tests:
- pagesize_spec.js
- List4_spec.js
- UpdateWorkspaceTests_spec.js
- CodeScanner_spec.js
- Entity_Explorer_Query_Datasource_spec.js
- DiscardChanges_spec.js

## Type of change

- Script fix

## How Has This Been Tested?

- Cypress run - local

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-21 00:03:10 +05:30
Satish Gandham
b2828dfe93
ci: Add lint check to the build step (#21442)
Add a step to verify lint rules in client build workflow.

---------

Co-authored-by: Satish Gandham <hello@satishgandham.com>
2023-03-20 22:50:44 +05:30
Aishwarya-U-R
50bc2f6917
test: Cypress - Automated tests for Airtable datasource (#21550)
## Description

- This PR includes tests for Airtable ds - along with connection &
querying & usage of various fields in the query page

## Type of change

- New script (non-breaking change which test functionality of Airtable
data-source)

## How Has This Been Tested?
- Cypress CI runs

## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-03-19 01:12:01 +05:30
Valera Melnikov
805256a274
chore: corrections for eslint and prettier (#21543)
Correction of eslint and printer errors/warnings. It is associated with [this activity](https://theappsmith.slack.com/archives/CGBPVEJ5C/p1678968535728579) in order to avoid conflicts with others.

  1. Fix eslint warnings in unit tests. All unit tests are passed.
  2. Fix prettier at cypress.

Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
2023-03-17 19:50:51 +05:30
sidhantgoel
214fb1705a
feat: migrate JsonIgnore to JsonView (#20086)
In summary, the change comprises adding `JsonView` annotations on
domain/model fields, controller methods, and arguments.
applying JsonView annotation on controller methods will include fields
which are marked with the same view in domain objects.
Similarly, usage on controller method arguments will only deserialize
the fields which are marked with same view in Domain object, which is
helpful in case we don't want the client to send some fields for
security reasons.
This change replaces the previous use of JsonIgnore for restricting
fields in API response and allows for more flexibility and will enable
us to have fine-grain control over fields serialized for different
contexts, such as API response, export, and import.
The following views are defined as of now.
`View.Internal` - View used to serialize for internal use. It inherits
from `Views.Public` and `Views.Export`, so it will also include those
fields.
`Views.Public` - View used for API request/response.
`Views.Export` - View used for making field exportable, like in the case
of Git sync and file export.
Also, we can define more views by adding an interface inside the Views
class and Views can also inherit fields marked with different view by
simple interface inheritance.

A small tutorial on JsonView - [Jackson JSON Views |
Baeldung](https://www.baeldung.com/jackson-json-view-annotation)

---------

Signed-off-by: Sidhant Goel <sidhant@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Nayan <nayan@appsmith.com>
2023-03-17 17:19:24 +06:00
Aishwarya-U-R
04b794fddd
test: Cypress - Automated basic tests for MsSQL DS (#21446)
## Description

- This PR includes basic tests for connecting to a MsSQL ds & running
simple queries on it

## Type of change

- New script (non-breaking change which functional tests the MsSql ds)


## How Has This Been Tested?

- Cypress local & CI run


## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-03-16 23:58:32 +05:30
Ivan Akulov
424d2f6965
chore: upgrade to prettier v2 + enforce import types (#21013)Co-authored-by: Satish Gandham <hello@satishgandham.com> Co-authored-by: Satish Gandham <satish.iitg@gmail.com>
## Description

This PR upgrades Prettier to v2 + enforces TypeScript’s [`import
type`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-8.html#type-only-imports-and-export)
syntax where applicable. It’s submitted as a separate PR so we can merge
it easily.

As a part of this PR, we reformat the codebase heavily:
- add `import type` everywhere where it’s required, and
- re-format the code to account for Prettier 2’s breaking changes:
https://prettier.io/blog/2020/03/21/2.0.0.html#breaking-changes

This PR is submitted against `release` to make sure all new code by team
members will adhere to new formatting standards, and we’ll have fewer
conflicts when merging `bundle-optimizations` into `release`. (I’ll
merge `release` back into `bundle-optimizations` once this PR is
merged.)

### Why is this needed?

This PR is needed because, for the Lodash optimization from
7cbb12af88,
we need to use `import type`. Otherwise, `babel-plugin-lodash` complains
that `LoDashStatic` is not a lodash function.

However, just using `import type` in the current codebase will give you
this:

<img width="962" alt="Screenshot 2023-03-08 at 17 45 59"
src="https://user-images.githubusercontent.com/2953267/223775744-407afa0c-e8b9-44a1-90f9-b879348da57f.png">

That’s because Prettier 1 can’t parse `import type` at all. To parse it,
we need to upgrade to Prettier 2.

### Why enforce `import type`?

Apart from just enabling `import type` support, this PR enforces
specifying `import type` everywhere it’s needed. (Developers will get
immediate TypeScript and ESLint errors when they forget to do so.)

I’m doing this because I believe `import type` improves DX and makes
refactorings easier.

Let’s say you had a few imports like below. Can you tell which of these
imports will increase the bundle size? (Tip: it’s not all of them!)

```ts
// app/client/src/workers/Linting/utils.ts
import { Position } from "codemirror";
import { LintError as JSHintError, LintOptions } from "jshint";
import { get, isEmpty, isNumber, keys, last, set } from "lodash";
```

It’s pretty hard, right?

What about now?

```ts
// app/client/src/workers/Linting/utils.ts
import type { Position } from "codemirror";
import type { LintError as JSHintError, LintOptions } from "jshint";
import { get, isEmpty, isNumber, keys, last, set } from "lodash";
```

Now, it’s clear that only `lodash` will be bundled.

This helps developers to see which imports are problematic, but it
_also_ helps with refactorings. Now, if you want to see where
`codemirror` is bundled, you can just grep for `import \{.*\} from
"codemirror"` – and you won’t get any type-only imports.

This also helps (some) bundlers. Upon transpiling, TypeScript erases
type-only imports completely. In some environment (not ours), this makes
the bundle smaller, as the bundler doesn’t need to bundle type-only
imports anymore.

## Type of change

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


## How Has This Been Tested?

This was tested to not break the build.

### 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
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Satish Gandham <hello@satishgandham.com>
Co-authored-by: Satish Gandham <satish.iitg@gmail.com>
2023-03-16 17:11:47 +05:30
Rishabh Rathod
4c31ec35b1
chore: Add cypress.env.json to gitIgnore (#21413)
## Description

Adding Cypress.env.json to gitIgnore 

## Type of change

- Chore 

## How Has This Been Tested?


### 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
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-16 10:14:32 +05:30
sneha122
43e7a00db0
fix: filepicker not showing in firefox issue fixed (#21257)
## Description

This PR fixes issue of file picker not showing up in firefox, The issue
occurred because the function being triggered on script load
`gapiLoaded`, was defined in a script that would load after `gapi`. Even
though `gapi` is being loaded asynchronously, in case of firefox when
using with windows OS, it would load before the script which had onload
function defined. This PR fixes the issue by defining onload function in
a script that loads before `gapi`

> Add a TL;DR when description is extra long (helps content team)

Fixes #21033 
> 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

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- Manual

### 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
- [ ] 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
- [x] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-03-15 16:33:14 +05:30
Shrikant Sharat Kandula
7b56706717
feat: Add static header for CSRF protection (#20965)
We add a static constant value header, to all requests made by the
client, whose method isn't `GET` or `HEAD`.

More discussion in [this Slack
thread](https://theappsmith.slack.com/archives/C03RPDB936Z/p1669701485071579?thread_ts=1669460732.544859&cid=C03RPDB936Z).
2023-03-15 15:32:24 +05:30
Aishwarya-U-R
46df08b6b9
test: Cypress - Automated script for Authenticated GraphQL (#21408)
## Description

- This PR includes cypress test for validating the Authenticated Graph
QL flow.

## Type of change

- New script

## How Has This Been Tested?
- Cypress CI run


## Checklist:
### QA activity:
- [X]  Added Test Plan Approved label after reviewing all changes
2023-03-15 10:33:34 +05:30
Ankita Kinger
e3476450c2
fix: Adding a fix for copy clipboard URL not working on HTTP domain (#21313)
## Description

> Adding a fix for copy clipboard URL not working on HTTP domain.
> Adding Javascript origin and redirect URLs on the google auth settings
page for better UX.
> Removing the upgrade button on the Appsmith watermark setting.
> Updating the placeholder for search input on members page.

Fixes #20574 #21170 

## Type of change

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

## How Has This Been Tested?
> Tested all the above points manually and it all works fine.

- Manual

## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-14 11:41:52 +05:30
Vijetha-Kaja
59d2e0460a
test: Cypress - mock api url update + Flaky fixes (#20754)
## Description

- Modified mock api url and refactored specs accordingly

**Flaky fixes below:**

- Listv2_BasicChildWidgetInteraction_spec.js
- QueryPane/Mongo_Spec.js
- CreateNewApp_spec.js
- Enabling S3_1_spec - upload case back

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-11 12:31:39 +05:30
Vijetha-Kaja
1477d0d72a
test: TED OAuth Automation (#21235)
## Description

- Automated TED OAuth 2.0 with authorization code

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-10 17:09:06 +05:30
Vijetha-Kaja
8c6ac8afa6
test: Cypress - Fix flaky tests (#21292)
## Description

**Fixed below flaky tests**

- DeleteWorkspace_spec.js
- Listv2_BasicChildWidgetInteraction_spec.js
- JSOnLoad_cyclic_dependency_errors_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-10 12:25:13 +05:30
Vijetha-Kaja
0fd5192296
test: Merge table.ts & tableV2.ts pages (#21094)
## Description

- Merged Table.ts & TableV2.ts into single page Table.ts and refactored
scripts accordingly
Flaky fixes below:
- Listv2_Button_Widget_spec.ts
- CreateNewApp_spec.js
- GuidedTour_spec.js

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-08 03:29:34 +05:30
Keyur Paralkar
2ccd20e1e5
fix: column dragging and column reordering (#20928)
## Description

This PR implements the following changes:
- Move the drag events from the Parent component's useEffect to the
`HeaderCell` component.
- Refactored the code. Inside the table component, we refactored the
code such that when SSP is disabled the component uses `StaticTable` and
when SSP enabled then we use `VirtualTable`.
- It also includes the fix for the following issue. Whenever the user
has a scroll to the bottom of the page, on clicking of add new button it
is expected that the scroll should move to the top but it wasn't
happening.

> Add a TL;DR when description is extra long (helps content team)

Fixes #20858
> if no issue exists, please create an issue and ask the maintainers
about this first


## Type of change


- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- Manual
    - Test cases:
        - Column name should appear on update from the property pane
        - reorder whenever SSP is enabled
        - On column re-size
        - When a col is frozen
        - When a col is unfrozen
        - When all the headers or one of them is removed
        - When sorted also should work
        - Enable multi-row selection
        - When in preview mode and back and forth(Check the above cases)
        - When in Deployed mode
- Dragging of columns from the column header should work as expected
both in Deploy and Published mode.
- 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
- [ ] 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
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-05 19:49:44 +05:30
Vijetha-Kaja
d8e06778e4
test: Flaky test fix (#21120)
## Description

**Fixed below flaky tests**

- DeleteWorkspace_spec.js
- Guided Tour.js
- GraphQL_spec.ts
- CreateNewApp_spec.js
- PgAdmin spec
- DS - CreateQuery methods refactored
- Mock DB creation refactored

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-05 08:52:42 +05:30
Preet Sidhu
75cf47b8c5
feat: Auto layout appsmith editor and mobile responsiveness (#21151)
## Description

Core features of Auto Layout and mobile responsiveness, hidden under a feature flag.

> Add a TL;DR when description is extra long (helps content team)



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.


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


## How Has This Been Tested?
> Manual regression and sanity tests for all fixed canvas functionality.

- Manual
- Jest
- Cypress



## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag


---------

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Arsalan <arsalanyaldram0211@outlook.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-04 12:55:54 +05:30
Tolulope Adetula
72738b95e2
fix: remove parent list widget from child widget level data (#20963)
## Description

Avoid cyclic dependency in child widget when using level data to
reference Parent List widget

Fixes #20793 

## Type of change
- Bug fix (non-breaking change which fixes an issue)



## How Has This Been Tested?

- Cypress

### Test Plan
> https://github.com/appsmithorg/TestSmith/issues/2187

### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-03-02 16:49:14 +01:00
Vijetha-Kaja
63412af71b
test: Flaky test fix (#21019)
## Description

**Fixed below flaky tests**
- Chart_Widget_Loading_spec.js
- Listv2_BasicChildWidgetInteraction_spec.js
- Modal_focus_spec.js
- DeleteWorkspace_spec.js
- GraphQL to TED
- Echo mock api to TED
- Autocomplete_JS_spec

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-03-02 02:28:48 +05:30
Druthi Polisetty
6ea0afe15c
fix: JSObjects | Sync methods | Not run consistently when Page is cloned (#20841)
## Description
fix: JSObjects | Sync methods | Not run consistently when Page is cloned

We used to not wait for all the calls to fetch the entities to run
evaluations however we changed this with some performance improvements.
This seems to have been missed for when we clone a page.

Fixes #20814 

## Type of change
- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?
- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-28 23:58:20 +05:30
Parthvi
821d8384be
test: Add tests for custom JS library with Git (#20978)
## Description

Add cypress tests for custom js library with git


## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
2023-02-28 23:46:56 +05:30
Vijetha-Kaja
27dd208a3d
test: Flaky test fix (#20950)
## Description

**Fixed below flaky tests**
- Button_onClickAction_spec.js
- DeleteWorkspace_spec.js
- LeaveWorkspaceTest_spec.js
- WorkspaceSettings_validation_spec.js
- MongoDBShoppingCart_spec.js
- GitImport_spec.js
- Basic_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-24 22:41:25 +05:30
Ayangade Adeoluwa
6a096464fa
fix: Auto-generated header Refactor (#19873)
API content type refactor flow. More information can be found
[here](https://www.notion.so/appsmith/API-Content-type-Header-Refactor-07f2f944e13f43148210c2461cf3fcda?d=339958cf1d374fefadfa437f86d95627)

Fixes #18473

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)


### 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: PiyushPushkar02 <118709669+PiyushPushkar02@users.noreply.github.com>
Co-authored-by: Sumit Kumar <sumit@appsmith.com>
Co-authored-by: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com>
2023-02-24 12:18:48 +00:00
Vijetha-Kaja
870ae0e41a
test:flaky test fix (#20888)
## Description

**Fixed below flaky tests**
- Button_tooltip_spec.js
- Date_column_editing_spec.js
- Basic_spec.js
- Gitimport_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-23 23:29:05 +05:30
Tolulope Adetula
7dc9056834
chore: improve ListV2 cypress scripts (#20905)
## Description
Improve Listv2 tests

Fixes # (issue)
https://theappsmith.slack.com/archives/C02JV8G1MP0/p1676925949886009



## Type of change

> Please delete options that are not relevant.

- Bug fix (non-breaking change which fixes an issue)



## How Has This Been Tested?

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: ashit-rath <ashit@appsmith.com>
Co-authored-by: Favour Ohanekwu <fohanekwu@gmail.com>
2023-02-23 21:02:31 +05:30
Rishabh Rathod
f846122a37
chore: remove unnecessary skeleton component (#20645)
## Description

Remove unnecessary skeleton for the static UI in the home page's Left
pane.

Media

https://user-images.githubusercontent.com/23132741/219005309-76226c00-e433-4b0e-a796-f1ce0f578b33.mov


## Type of change

- Chore


## How Has This Been Tested?

- Manual


### 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-22 12:32:43 +05:30
Aishwarya-U-R
72f627932a
test: Script updates for flaky tests (#20846)
## Description

- This PR fixes the flakes from below specs:
- Binding/SmartSubstitutionWidgets_spec.js
- /Git/GitDiscardChange/DiscardChanges_spec.js
- /Widgets/Chart/Custom_Chart_spec.js
- /Checkbox/CheckboxGroup_withQuery_spec.js
- Workspace/MemberRoles_Spec.ts

## Type of change

- Script updates


## How Has This Been Tested?
- Cypress CI runs

## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reviewing all changes
2023-02-22 11:31:25 +05:30
Hetu Nandu
721767d742
feat: URL Navigation for Widgets (#20202)
## Description

Widget selection is driven by URL changes. This would fix browser
navigation for users as they can use browser back/forward buttons to
travel across older contexts on Appsmith.

> Fixing browser URL navigation for widgets

Fixes #19571


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.

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


## How Has This Been Tested?

- Manual
- Jest
- Cypress

### Test Plan
> Add Testsmith [test
cases](https://github.com/appsmithorg/TestSmith/issues/2171) links that
relate to this PR

### Issues raised during DP testing
- [X] When a selected widget is below viewport and user refreshes the
page, then the widget property pane is open but the page does not
navigate to the selected widget
https://loom.com/share/09f1eda2f02d474981a0d48e4a6419ec

- [ ] Drop 2 widgets one at a time > Delete both the widgets > Now click
on back button of the browser > Observe the url it shows the widget id
in the URL but the canvas remains empty
https://loom.com/share/53cae28a5d224e67b783c8ccf53745f5
Dev Response: This issue is valid but not a major inconvenience. We will
try to track it and see if it needed to be addressed. Many other web
tools do not handle such cases


- [X] Canvas scrolls down when all widgets are selected.
https://loom.com/share/c8a68dadcdb040779abd3a73bde2b06c

- [X] Widget is not getting highlighted when added from the API editor
page. Please refer to the attached
video:-https://jiju8jbmwa.vmaker.com/record/IkwiAqFgafK9dVmu



## 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:
- [ ] Test plan has been approved by relevant developers
- [x] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 19:08:16 +05:30
Druthi Polisetty
bf3502166b
fix: Error log on a widget property not clearing out when the widget property is deleted (#20486)
## Description
fix: Error log on a widget property not clearing out when the widget
property is deleted

Fixes #12894 

## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-21 09:57:56 +05:30
Tolulope Adetula
d2af098746
fix: Limit List widget nesting to a maximum of 3 levels (#20506)
## Description

Limit the amount of nesting in the List widget to 3 levels.

The List widget could be nested in 2 ways.
1. Drag and Drop from Explorer
2. Copy and Paste.
3. Drag and Drop from Canvas

To cater to all these cases, I created 3 more blueprint operations that
serve as a life cycle for the widget.
1. BEFORE_ADD
2. BEFORE_PASTE
3. BEFORE_DROP

This would enable validation of the level/nesting before the DSL is
updated

Fixes #20585

## Type of change
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update


## How Has This Been Tested?
- Cypress

### Test Plan
> [Nested List Widget Test
Plan](https://github.com/appsmithorg/TestSmith/issues/2187)

## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Ashit Rath <ashit@appsmith.com>
Co-authored-by: Favour Ohanekwu <fohanekwu@gmail.com>
2023-02-21 09:43:25 +05:30
Vijetha-Kaja
832b3d23ca
test: Flaky test fix (#20667)
## Description

**Fixed below flaky tests**
- List4_spec.js
- MemberRoles_spec.ts
- Basic_spec.js
- /Git/GitImport/GitImport_spec.js
- List_Select_Widgets_spec
- AddWidget_spec

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-21 02:21:16 +05:30
Druthi Polisetty
4851e9754a
fix: User gets an error even when table widget is added from the API … (#20593)
## Description
fix: User gets an error even when table widget is added from the API
page successfully

Fixes #14037 

## Type of change
- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?
- Manual

### 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-20 17:33:54 +05:30
ChandanBalajiBP
b72dea33f3
feat: Error handling phase 1 (#20629)
## Description
This PR updates the error logs 
- Establishing a consistent format for all error messages.
- Revising error titles and details for improved understanding.
- Compiling internal documentation of all error categories,
subcategories, and error descriptions.

Updated Error Interface:
https://www.notion.so/appsmith/Error-Interface-for-Plugin-Execution-Error-7b3f5323ba4c40bfad281ae717ccf79b

PRD:
https://www.notion.so/appsmith/PRD-Error-Handling-Framework-4ac9747057fd4105a9d52cb8b42f4452?pvs=4#008e9c79ff3c484abf0250a5416cf052

>TL;DR 

Fixes # 


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)


## How Has This Been Tested?

- Manual
- Jest
- Cypress

### Test Plan


### Issues raised during DP testing


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [x] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: subrata <subrata@appsmith.com>
2023-02-18 18:25:46 +05:30
Anand Srinivasan
73ba3a39c5
feat: peek overlay (#20053)
## Description

Hover over appsmith properties in code to peek data.
<img width="380" alt="image"
src="https://user-images.githubusercontent.com/66776129/217707810-164924c0-36e8-4450-b087-18af333c7547.png">

This right now covers:
- Queries/JsObjects/Apis/Widgets and their properties.
- Note: For query or Api, this'll work only upto `Api.data`. (Not
`Api.data.users[0].id`)
- This is because of the way codemirror renders code and we'll need more
time to see how this is best handled.


Misc:
- added `react-append-to-body` to work with variable height for peek
overlay
- we needed a container that doesn't apply `position: absolute` to
itself
- Because, when a container's `height` is zero with `position: absolute`
(like in bp3-portal), child elements cannot be positioned using just the
`bottom` property
- with `react-append-to-body`, the container won't have `position:
absolute`, instead it is applied to the child element `<div>` directly,
hence we can position using `bottom` property.


Fixes #17507


Media
https://www.loom.com/share/0f17918fcd604805b023c215d57fce43


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


## How Has This Been Tested?

- Manual

### Test Plan
https://github.com/appsmithorg/TestSmith/issues/2173
https://github.com/appsmithorg/TestSmith/issues/2178

### Issues raised during DP testing

https://github.com/appsmithorg/appsmith/pull/20053#issuecomment-1420545330

https://github.com/appsmithorg/appsmith/pull/20053#issuecomment-1424427913

## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [x] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-17 21:33:34 +05:30
Keyur Paralkar
b22ad3a769
feat: added column freeze and unfreeze functionality to table widget (#18757)
**PRD**:
https://www.notion.so/appsmith/Ability-to-freeze-columns-dd118f7ed2e14e008ee305056b79874a?d=300f4968889244da9f737e1bfd8c06dc#2ddaf28e10a0475cb69f1af77b938d0b

This PR adds the following features to the table widget:

- Freeze the columns to the left or right of the table.(Both canvas and
page view mode).
- Unfreeze the frozen columns. (Both canvas and page view mode).
- Columns that are left frozen, will get unfrozen at a position after
the last left frozen column. (Both canvas and page view mode).
- Columns that are right frozen, will get unfrozen at a position before
the first right frozen column. (Both canvas and page view mode).
- Column order can be persisted in the Page view mode.
- Users can also unfreeze the columns that are frozen by the developers.
- Columns that are frozen cannot be reordered(Both canvas and page view
mode)
- **Property pane changes (Columns property)**:
- If the column is frozen to the left then that column should appear at
top of the list.
- If the column is frozen to the right then that column should appear at
the bottom of the list.
- The columns that are frozen cannot be moved or re-ordered in the list.
They remain fixed in their position.
- In-Page mode, If there is a change in frozen or unfrozen columns in
multiple tables then the order of columns and frozen and unfrozen
columns should get persisted on refresh i.e. changes should get
persisted across refreshes.
2023-02-15 17:12:46 +05:30
Favour Ohanekwu
ff64f4d02f
fix: Fetch app's current branch from redux store (#20601)
## Description

### Cause of issue

Appsmith's persistent data is stored in the browser's localStorage under
a key generated using the `applicationId` and `branch name`. When
fetching the store's value on page load, if the branch's name is not
present in the URL string, its value defaults to an emptyString.

### Solution
Default value of `branch name` should be the current git branch.

Fixes #15692 
## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
manual

### Test Plan
Cypress covers test case

### 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [x] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-15 11:21:33 +01:00
Aishwarya-U-R
970e4b16a4
test: Cypress migration to TED GITEA (#18799)
## Description

- This PR includes tests for migrating to Local GITEA for running
cypress tests so we dont run into timeout issues in Git tests

## Type of change

- New Script + Script fixes

## How Has This Been Tested?
- Cypress on CI

## Checklist:
### QA activity:
- [X] Test plan has been approved by relevant developers
- [X] Test plan has been peer reviewed by QA
- [X] Cypress test cases have been added and approved by either SDET or
manual QA
- [X] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [X] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-15 01:12:45 +05:30
ashit-rath
a47dba5e26
feat: List V2 (#15839)
## Description

TL;DR
This is a complete architectural change of of List widget works to
support all widgets we currently have and should automatically support
any future widgets.
It also introduces nested List widgets i.e a list widget can have a
another list widget which in turn can have another list widget.

Fixes #18206
Fixes #6775
Fixes #13211
Fixes #16582
Fixes #11739
Fixes #15094
Fixes #6840
Fixes #10841
Fixes #17386
Fixes #18340
Fixes #16898
Fixes #17555
Fixes #6858
Fixes #9568
Fixes #17480
Fixes #18523
Fixes #18206  
Fixes #16586
Fixes #18106
Fixes #16576
Fixes #14697
Fixes #9607
Fixes #19648 
Fixes #19739
Fixes #19652 
Fixes #18730 
Fixes #19503 
Fixes #19498
Fixes #19437
Fixes #5245 
Fixes #19150
Fixes #18638
Fixes #11332
Fixes #17901
Fixes #19043
Fixes #17777
Fixes #8237
Fixes #15487
Fixes #15988
Fixes #18621
Fixes #16788
Fixes #18110
Fixes #18382
Fixes #17427
Fixes #18105
Fixes #18287
Fixes #19808
Fixes #14655

## Type of change

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

## How Has This Been Tested?
- Cypress
- Jest
- Manual

## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes

---------

Co-authored-by: Tolulope Adetula <31691737+Tooluloope@users.noreply.github.com>
Co-authored-by: Favour Ohanekwu <fohanekwu@gmail.com>
2023-02-14 17:07:31 +01:00
Anagh Hegde
34822d563a
fix: Add file system locks after the git operation (#12174)
## Description

> Add file locking using redis with retry. Helpful when multiple users
are trying to perform git actions in the Appsmith UI.

Fixes #10856 
Fixes #14366

## Type of change


- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?

- Test A
- Test B

## Checklist:

- [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
- [ ] 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

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Sidhant Goel <sidhant@appsmith.com>
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
Co-authored-by: System Administrator <root@Parthvis-MacBook-Pro.local>
2023-02-14 20:58:25 +05:30
Saroj
9a80b6d856
test: Fix to run Upgrade cypress test only in CE (#20472)
## Description
- We need to add the license key to start the server for EE and to
authorise gsheet we need to connect to actual cloud services. So, until
we find a solution we are skipping the gsheet test in EE.

## Type of change
- Cypress


## How Has This Been Tested?
- Cypress

## Checklist:
### QA activity:
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-14 17:05:59 +05:30
Vijetha-Kaja
57a4931457
test: fixed flaky tests (#20515)
## Description

**Fixed below flaky tests**
- inline_editing_validations_spec.js
- Button_onClickAction_spec.js
- NavigateTo_spec.ts
- GitSyncedApps_spec.js
- Basic_spec.js
- List4_spec.js
- Form_With_CheckBox_spec.js
- SmartSubstitutionWidgets_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
Co-authored-by: Parthvi <80334441+Parthvi12@users.noreply.github.com>
2023-02-14 12:30:40 +05:30
arunvjn
1d9d5bb197
fix: access outer scope variables inside callbacks (#20168)
## Description
Any platform function that accepts a callback were unable to access the
variables declared in its parent scopes. This was a implementation miss
when we originally designed platform functions and again when we turned
almost every platform function into a Promise. This PR fixes this
limitation along with some other edge cases.

- Access outer scope variables inside the callback of run, postMessage,
setInterval, getGeoLocation and watchGeolocation functions.
- Fixes certain edge cases where functions with callbacks when called
inside the then block doesn't get executed. Eg `showAlert.then(() => /*
Doesn't execute */ Api1.run(() => {}))`
- Changes the implementation of all the platform function in appsmith to
maintain the execution metadata (info on from where a function was
invoked, event associated with it etc)

#### Refactor changes
- Added a new folder **_fns_** that would now hold all the platform
functions.
- Introduced a new ExecutionMetadata singleton class that is now
responsible for hold all the meta data related to the current
evaluation.
- Remove TRIGGER_COLLECTOR array where all callback based platform
functions were batched and introduced an Event Emitter based
implementation to handle batched fn calls.
- All callback based functions now emits event when invoked. These
events have handlers attached to the TriggerEmitter object. These
handler does the job of batching these invocations and telling the main
thread. It also ensures that platform fn calls that gets triggered out
the the context of a request/response cycle work.

#### Architecture
<img width="751" alt="Screenshot 2023-02-07 at 10 04 26"
src="https://user-images.githubusercontent.com/32433245/217259200-5eac71bc-f0d3-4d3c-9b69-2a8dc81351bc.png">

Fixes #13156
Fixes #20225 

## Type of change
- Bug fix (non-breaking change which fixes an issue)
- Refactor

## How Has This Been Tested?
- Jest
- Cypress
- Manual


### Test Plan
  - [ ] https://github.com/appsmithorg/TestSmith/issues/2181
  - [ ] https://github.com/appsmithorg/TestSmith/issues/2182
- [ ] Post message -
https://appsmith-git-chore-outer-scope-variable-access-get-appsmith.vercel.app/app/post-msg-app/page1-635fcfba2987b442a739b938/edit
- [ ] Apps:
https://appsmith-git-chore-outer-scope-variable-access-get-appsmith.vercel.app/app/earworm-1/home-630c9d85b4658d0f257c4987/edit
- [ ]
https://appsmith-git-chore-outer-scope-variable-access-get-appsmith.vercel.app/app/automation-test-cases/page-1-630c6b90d4ecd573f6bb01e9/edit#0hmn8m90ei

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reviewing all Cypress test
2023-02-12 00:03:20 +05:30
Ayangade Adeoluwa
3b4aff7ab9
fix: Fix annoying error with text input control (#20411) 2023-02-10 17:41:17 +07:00
akash-codemonk
fd678a367a
fix: fork template button not visible on page refresh (#20388) 2023-02-10 11:41:35 +05:30
Ayangade Adeoluwa
1e61876f72
feat: Feature/evaluated value window (#19972)
Evaluated value window improvements:

1. Evaluated value window will not show up unless there is a dynamic
binding within the input field or when there's a validation error on the
input field (this edge case happens when user types an incorrect string
in the field for example typing a wrong date format inside the Default
Date field in the DatePickerWidget).
2. Evaluated value window will be draggable anywhere on the DOM. The new
position would also be remembered the next time the user returns to the
input.
3. The UI of the evaluated value window has been changed: Since the
popup will become draggable, it will have the name of the input it is
attached to. The styling of the evaluated value window fields has been
changed as well.

Design Documentation:
https://www.notion.so/appsmith/Improve-the-evaluated-value-window-experience-fbbdead747a5468b8015c2fbbb5843bc

> Add a TL;DR when description is extra long (helps content team)

Fixes #4458 

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

> Tests

- Manual
- 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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-09 16:39:54 +05:30
Saroj
ea089877d5
test: skipping test in upgrade appsmith spec (#20497)
## Description
- Skipping validations in UpgradeAppsmith_spec.js

## Type of change
- Cypress

## How Has This Been Tested?
- Cypress

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-08 19:12:09 +05:30
Vijetha-Kaja
3902e7bd2c
test: Fix flaky tests (#20483)
## Description

- Added clean up for command_click_naviagtion_spec

**Fixed below flaky tests**
- Add_new_row_spec.js
- ForkApplication_spec.js

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [x] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-08 17:14:39 +05:30
balajisoundar
bacb77a352
chore: Render below the fold widget components when browser is idle using Intersection Observer (#18747)
## Description
In order to improve the first load of the applications, now we're only
rendering the widget components that are [above the
fold](https://en.wikipedia.org/wiki/Above_the_fold#In_web_design) right
away and rendering the other widget components whenever the browser is
idle. This decreases the amount of time it takes before the first paint
on the screen.

This is getting shipped behind a feature flag!
2023-02-08 16:53:39 +05:30
Abhinav Jha
8c2825e862
fix: Modal widget background issues (#20446)
## Description

The following issues were caused because of the recent changes with
respect to auto height instant update.
In the recent change, we removed a few wrappers around containers which
seemed unnecessary. This led to the fact that in deploy mode, these
wrappers were not present. The issue with this was that, these wrappers
were responsible for the modal widget's background color styling. This
also led to an issue where the background color was not applied in edit
mode.

To fix this, we've added a wrapper in the component and removed all
styling logic from the widget. This is because, the component is
responsible for the actual rendering and what users see. The widgets
should act as an interface, and as a result, should not deal with
styling.

Fixes #20434 
Fixes #20405 
Fixes #20436 


## Type of change
- Bug fix (non-breaking change which fixes an issue)
2023-02-08 13:31:26 +05:30
Saroj
d51b12719c
test: Appsmith upgrade tests (#20294)
## Description
- Added test for appsmith upgrade

## Type of change
- Cypress


## How Has This Been Tested?
- Cypress

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-07 15:45:23 +05:30
Druthi Polisetty
923e34fbde
fix: Objects that start with an underscore _JSObject1 fail to be navigated from the debugger (#20020)
## Description
fix: Objects that start with an underscore `_JSObject1` fail to be
navigated from the debugger

Fixes #19115

Media
<img width="616" alt="image"
src="https://user-images.githubusercontent.com/20187542/214258877-797fc095-e523-486e-8674-b9a06f3cc8f8.png">



## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- Cypress

### Test Plan


### Issues raised during DP testing



## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-06 13:08:09 +05:30
Vijetha-Kaja
bab8e6be8d
test: Fix flaky tests + Add clean up for git repos (#20319)
## Description

- Added clean up for git repos

**Fixed below flaky tests**
- Scrolling_spec.js
- PgAdmin_spec.js
- BasicLint_spec.ts
- Logs_spec.ts
- GraphQL_spec.ts

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com>
2023-02-06 13:07:01 +05:30
Druthi Polisetty
73bc0c0fc9
fix: {{appsmith.user.email}} is not available on page load (#20303)
## Description
Fix for a bug where {{appsmith.user.email}} is not available on page
load.

Fixes #20275 

## Type of change
- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- Manual
- [ ] Google sheet - get the data by {{appsmith.user.email}} in table,
verify the On page load for the table
- [ ] Mongo - Retrieve data with customer_email :
{{appsmith.user.email}} Verify the on page load
- [ ] PostgreSQL - Retrieve data with email : {{appsmith.user.email}}
Verify the on page load
`SELECT * FROM public."users" where email = '{{appsmith.user.email}}';`
- [x] Verify JSobject function for stored and User values >> On page
load

### Test Plan

### Issues raised during DP testing


## 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-06 12:36:08 +05:30
akash-codemonk
4db9f6d13f
chore: Revert "feat: move the widget creation CTA off the Entity explorer (#… (#20335)
…19844)"

This reverts commit 280000834c.


## Description
https://theappsmith.slack.com/archives/C02JT9CSE6L/p1675380583041469
2023-02-03 14:47:01 +06:00
sneha122
5c8ab85df7
fix: Auth DS re-authorise issue fixed (#20176)
## Description

This PR fixes:

Issue with disabled save and authorise button on authenticated API
datasource page. When authenticated API is created for authentication
type OAuth2, we can see save and authorise button at the bottom of
datasource configuration page. When editing existing Auth API
datasource, if we do not make any changes in datasource config, button
is disabled and user is unable to simply re-authorise their datasource.

> Add a TL;DR when description is extra long (helps content team)

Fixes #19933 
> 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

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- Manual
- 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
- [ ] 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
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-02-02 19:20:36 +05:30
Aishwarya-U-R
fec27e2e62
test: Skipping Cypress flaky tests to unblock CI (#20316)
## Description

- Skipping GitImport & Scrolling specs which are flaky in CI to unblock
PR's merge
- Will be analysed more & added back to running suite

## Type of change
- Script update


## Checklist:
### QA activity:
- [X] Cypress test cases have been added and approved by either SDET or
manual QA
2023-02-02 16:18:35 +05:30
Vijetha-Kaja
a2afc8c4d9
test: Cypress Flaky fixes + Mock api update + PgAdminspec fix (#20032)
## Description

- Fixed PgAdminspec 

**Fixed below flaky tests**
- PgAdmin_spec.ts
- CreateNewApp_spec.js
- DatasourceSchema_spec.ts
- Tab_spec.js
- GitBugs_spec.js
- Fork_Template_Existing_app_spec.js
- Fork_Template_To_App_spec.js
- Fork_Template_spec.js
- Scrolling_Spec.ts
- APIOnLoad_Spec.ts
- SetTimeout_spec.ts

**Updated git helper methods**
- MongoDBShoppingCart_spec.js
- GitImport_spec.js
- Deploy_spec.js
- DisconnectGit_spec.js
- GitBugs_spec.js
- RepoLimitExceededErrorModal_spec.js
- ForkTemplateToGitConnectedApp.js

**Modified mock api url and refactored below specs accordingly**
- PromisesApp_spec.js
- Autocomplete_JS_spec.ts
- Bug16377_spec.ts
- InputTruncateCheck_Spec.ts
- Refactoring_spec.ts
- FilePickerV2_spec.js
- CurlImportFlow_spec.js
- SetTimeout_spec.ts

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-02 13:29:24 +05:30
Favour Ohanekwu
408cbe2ac4
chore: fix js object flaky tests (#20106)
## Description

- Introduces a new way of filling JS content in cypress tests
- Adds tests to handle invalid export of JS Objects
- Removes redundant "toast wait" function
- Refactors selection of JSAction from state

Fixes #20023 



## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or manual QA
- [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-02-01 20:15:25 +05:30
akash-codemonk
280000834c
feat: move the widget creation CTA off the Entity explorer (#19844) 2023-02-01 17:03:15 +05:30
Aishwarya-U-R
0b28b754b0
test: Moving specs to run on FatContainer + Gitea migration (#18920)
## Description

- This PR moves all specs from slim to fat container to run tests underneath it
- Fat has the actual libraries that are being shipping to customers, hence this PR
- Also includes moving Git tests from using GitHub to Gitea

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


## How Has This Been Tested?
- Cypress CI Fat runs

## Checklist:
### QA activity:
- [X] Test plan has been approved by relevant developers
- [X] Test plan has been peer reviewed by QA
- [X] Cypress test cases have been added and approved by either SDET or manual QA
- [X] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [X] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: yatinappsmith <84702014+yatinappsmith@users.noreply.github.com>
2023-01-25 11:09:02 +05:30
albinAppsmith
110e6085b8
feat: Renamed design system package (#19854)
## Description

This PR includes changes for renaming design system package. Since we
are building new package for the refactored design system components,
the old package is renaming to design-system-old.

Fixes #19536 

## Type of change

- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)


## How Has This Been Tested?

- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-01-23 09:20:47 +05:30
Vijetha-Kaja
685b11ea5d
test: Flaky test fix-3 (#19748)
## Description

- Added checkForPageSaveError in assertAutoSave and assertPageSave
methods
- Fixed below flaky tests
- JSFunctionExecution_spec.ts 
- Scrolling_Spec.ts
- Fork_Template_spec.js
- Fork_Template_To_App_spec.js
- GuidedTour_spec.js
- JSEditorComment_spec.js
- MemberRoles_Spec.ts

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-01-18 14:54:15 +05:30
sneha122
9c113da2a2
chore: cypress tests added (#19422)
## Description
Cypress test cases for datasource autosave improvement
https://github.com/appsmithorg/appsmith/issues/4381:

Fixes #18518

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)
- This change requires a documentation update


## How Has This Been Tested?
- 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
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-01-13 17:10:58 +05:30
Aishwarya-U-R
be49898f10
test: Script updates to unblock CI (#19685)
## Description

- This PR includes fixes for below specs to unblock CI:
- SetTimeout_spec.ts
- ForkApplication_spec.js 
- ApplicationURL_spec.js
- ShareAppTests_spec.js

## Fixes
- CI run failures

## Type of change
- Script fix

## How Has This Been Tested?
- Cypress CI run

## Checklist:
### QA activity:
- [X] Test plan has been approved by relevant developers
- [X] Test plan has been peer reviewed by QA
- [X] Cypress test cases have been added and approved by either SDET or
manual QA
- [X] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [X] Added Test Plan Approved label after reveiwing all Cypress test
2023-01-11 17:24:33 +05:30
arunvjn
c8063743a2
fix: Batch operations on appsmith store for performance gains (#19247) 2023-01-10 10:23:08 +05:30
akash-codemonk
068af24862
fix: generate page error while creating a datasource (#19440) 2023-01-09 20:21:13 +05:30
akash-codemonk
2b2372c6aa
feat: editor header UI update (#19414) 2023-01-09 19:52:23 +05:30
Shrikant Sharat Kandula
4f5bfb5967
tests: Add Origin header to all requests (#19439) 2023-01-09 18:10:32 +05:30
Ayangade Adeoluwa
f7897e96be
fix: Fix api url binding params (#18987)
This PR fixes API query params from being truncated when a dynamic
binding expression is added to the API Url.

Fixes #16683 

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?

- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-01-09 17:46:52 +05:30
Vijetha-Kaja
eaf4b1b968
fix: flaky test fix 2 (#19522)
## Description

- Fixed below flaky tests
- Templates/Fork_Template_To_App_spec.js
- Templates/ForkTemplateToGitConnectedApp.js
- Templates/Fork_Template_Existing_app_spec.js
- Templates/Fork_Template_spec.js
- Onboarding/CreateNewApp_spec.js
- IDE/MaintainContext&Focus_spec.js
- Onboarding/GuidedTour_spec.js
- ThemingTests/Theme_MultiSelectWidget_spec.js
- Widgets/Tab/Tab_spec.js
- BugTests/Autocomplete_JS_spec.ts

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [x] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-01-09 16:04:25 +05:30
Ravi Kumar Prasad
fa930838aa
feat: code commenting #9369 (#18667)
## Description
Adds code commenting in JS objects code editor and JS fields. Users can
use `Cmd + /` on Mac and `Ctrl + /` on other systems to
comment/uncomment code now.

Fixes #9369



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

## How Has This Been Tested?
- Manual
- Jest

### Test Plan
- [x] https://github.com/appsmithorg/TestSmith/issues/2120
- [x] https://github.com/appsmithorg/TestSmith/issues/2121
- [x] https://github.com/appsmithorg/TestSmith/issues/2122

### Issues raised during DP testing
- [ ]
https://github.com/appsmithorg/appsmith/pull/18667#issuecomment-1348354145


## Checklist:
### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-01-06 11:57:53 +00:00
sneha122
c7143035fc
fix: New user datasource test 404 issue fixed (#19435)
## Description
When a new user who signs up, creates datasource and tests it before
saving it, then the test API is throwing 404 error. This PR fixes that
issue

Fixes #19426 

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


## Type of change

- Bug fix (non-breaking change which fixes an issue)


## How Has This Been Tested?
- Manual
- 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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-01-05 18:06:26 +05:30
Nidhi
02c5c45972
fix: Added handling for empty evaluated values (#19438) 2023-01-04 02:17:57 +05:30
Favour Ohanekwu
23a89b9a13
fix: Save JS Execution data on trigger (#18940) 2022-12-30 13:31:08 +01:00
sneha122
b7c104c66f
fix: ds discard popup issue fixes (#19114)
This PR includes following changes:
- With latest datasource autosave improvements, we do not save the
datasource immediately but save it on explicit click of save button, so
in case user has not saved any changes and tries to leave the page, we
have added a popup to inform users that they have unsaved changes and
whether they would like to save them or not.
- The issue was in case of postgres and authenticated API datasource,
this popup was getting seen even when the user has not made any changes
in the datasource configuration. This PR solves that issue.
- The unsaved changes popup needs to be shown only when user has made
any new changes in the datasource form

TL;DR
- We have used redux form's isDirty method to check if user has made any
new updates to the form or not. This isDirty compares initial value of
datasource form with current form value and if current form value is
different it shows the unsaved changes popup
- The issue occurred because in case of postgres and authenticated API
datasource, we initialise 1 default pair of host address and port
(postgres), and default pairs of headers and query parameters
(Authenticated API). These initial default changes made the form dirty
and so user used to see the popup even when they have not explicitly
made any changes.
- This PR fixes the issue by setting initial form value with these
defaults so they do not make the form dirty.

Fixes #18962 , #18998 

https://user-images.githubusercontent.com/30018882/208931098-b570e3c4-10bc-4b76-bd54-531ccf869436.mov

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-30 15:53:24 +05:30
akash-codemonk
9dfba20e5b
fix: hide the fork template button when there are no workspaces to fork to (#19226) 2022-12-29 17:01:10 +05:30
Tanvi Bhakta
795416ac90
fix: update button states to secondary (#19048)
Some tertiary buttons were missed out when closing
https://github.com/appsmithorg/appsmith/issues/18052, not sure why. This
PR updates them.

Depends on https://github.com/appsmithorg/design-system/pull/294
2022-12-29 11:08:13 +00:00
akash-codemonk
553a15ced9
feat: in-app embed settings (#19023)
## Description

Get code snippet for embedding
2022-12-26 10:41:33 +05:30
Vijetha-Kaja
c8bc544658
fix: Fixed flaky tests (#19071)
## Description

- Fixed below flaky test
- Templates/Fork_Template_To_App_spec.js
- Templates/ForkTemplateToGitConnectedApp.js
- Templates/Fork_Template_Existing_app_spec.js
- Templates/Fork_Template_spec.js
- Widgets/WidgetCopyPaste_spec.js
- OnLoadTests/JSOnLoad_cyclic_dependency_errors_spec.js 
- Onboarding/CreateNewApp_spec.js
- Binding/Bind_tableV2Api_spec.js
- Chart/Custom_Chart_spec.js
- IDE/MaintainContext&Focus_spec.js
- ExplorerTests/Scrolling_Spec.ts

## Type of change

- Flaky test fix

## How Has This Been Tested?
- Cypress test runs

## Checklist:
### QA activity:
- [x] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-24 23:31:03 +05:30
Aswath K
d70f298070
chore: Makes use of DS components in ThemeControls (#19000)
After doing an exploration, I found that ThemeShadowControl and
ThemeBorderRadiusControl were not using the components from the Design
System. Edited those components to make use of DS components.
Also removed some unwanted DOM elements
2022-12-23 15:37:29 +05:30
ChandanBalajiBP
cee50a4d3d
test: Cypress tests for AST-based entity refactor(WIP) (#18988) 2022-12-23 09:35:54 +05:30
Ankita Kinger
d70d6a7426
fix: Updating error message and placeholders for cloud instance (#19113)
## Description

> Updating error message and placeholders for cloud instance

Fixes #19097 #19096 

## Type of change

- Bug fix (non-breaking change which fixes an issue)

## How Has This Been Tested?
> Tested locally for both - cloud & self-hosted

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


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2022-12-22 23:10:56 +05:30
ChandanBalajiBP
85eeedf08f
fix: Remove duplicate schema fetch calls (#18448)
* fix: Remove duplicate schema fetch calls

* added cypress test case

* added missing closing braces

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-22 14:00:49 +05:30
arunvjn
2dc7dc90e3
feat: Import javascript libraries (#17895) 2022-12-21 22:44:47 +05:30
Aman Agarwal
4a381607eb
fix: google sheet ui issues, removed redundant code (#18785)
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2022-12-20 20:40:18 +05:30
Parthvi
a30fbf2c77
test: add common test methods for RBAC (#18968) 2022-12-16 10:45:25 +05:30
akash-codemonk
17dbe63ed3
feat: [Context Switching] maintain focus of code editor fields (#18240) 2022-12-15 19:45:46 +05:30
Aswath K
c72f865962
chore: Property pane search input focus (#18858) 2022-12-15 16:25:52 +05:30
Ayangade Adeoluwa
2cc64183c8
fix: Error handling for undefined datasource in API Authentication (#18881) 2022-12-13 17:16:56 +05:30
GitStart-Appsmith
618626f6a4
feat: [APPSMTH-22] Execute action on widget focus and blur (#18128)
Co-authored-by: balajisoundar <balaji@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-12 12:39:22 +05:30
Anand Srinivasan
284571803b
fix: update settings pane validations (#18739)
* init fix

* button style update

* decode url in preview

* bring back custom slug validation

* custom slug validation on type

* remove imports

* handle special characters in url preview

* change label

* code clean up

* remove pageId from action name selector

* messages clean up

* tests for validations

* cypress cases update

* Renamed helper methods

* add index for test cases

* AppSettings specs script ts updates

* Added Bud id in title #18698

* GIt Import spec fix

* GItImport spec fix

* Git import unskip

* Skipping Git import

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-12 10:21:14 +05:30
Aswath K
ce2925cafc
feat: Property pane search (#18164) 2022-12-11 20:12:32 +05:30
Ankita Kinger
d9f20e33ad
chore: splitting the role name to avoid showing workspace name next to it (#18830)
* splitting the role name to avoid showing workspace name next to it

* fixing cypress tests failures
2022-12-10 14:00:28 +05:30
Aishwarya-U-R
70f6cd1ab8
test: Automated tests for Bug18376 + few flaky fixes (#18769)
* ApiOnload spec fix

* Bug 18376 script added

* Bug 18376 script fix

* ValidateURL() added

* OnLoadTests/APIOnLoad_Spec.ts fix

* Moved Bug 16248 script

* JSOnload trial fix

* JsonLoad fix -disbaling not working hnce commented

* Skipping GitImport (merge issue-open bug 18776)

* Git imPort trial fix

* PassingParams spec update

* APIPage.ts wrong update corrected

* Removed added comments

* ApiPage.ts mistake corrected!
2022-12-09 10:36:52 +05:30
Hetu Nandu
3b98c8f7fe
feat: Command click navigation via code (#18326) 2022-12-08 17:46:41 +05:30
rahulramesha
3bb9e96e39
feat: [Context Switching] Complex widgets and other Phase 2 items (#17046)
This PR contains changes to retain context on the following items,
Leaving and then returning to a page should maintain what api/query was open
Entity explorer should stay as you left it when you left the page (collapse levels)
Widget/explorer tab
Width - Should be the same across all pages of an app
Property Pane width
Complex widgets, multi tier property panes

Co-authored-by: hetunandu <hetunandu@gmail.com>
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: Hetu Nandu <hetu@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-12-08 12:51:58 +05:30
Rishabh Kashyap
2213a61357
fix: resetting audio and video widget (#18126)
* bug for audio and video widget fixed

* cypress test for audio widget

* audio and video updated cypress tests

* cypress test cases updated

* writing logic for video widget

* working on video widget

* intermediate logic

* inbetween logic

* updateWidgetMetaProperty removed from onEnded event

* this.props.playing logic in onPlay & onPause events

* test code

* test code

* Add comment

* audio widget updated; comments for audio and video widget

* cypress changes

* removed cypress credentials

* comments updated

* change in comments and cypress test cases

* feedback incorporated

* comments added to audio and video spec files

* video spec updated

* video spec updated

Co-authored-by: balajisoundar <balaji@appsmith.com>
2022-12-07 20:40:28 +05:30