Commit Graph

6756 Commits

Author SHA1 Message Date
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
Sangeeth Sivan
ae382de042
feat: hide things on airgap (#22274)
## Description

- hide `start from template` and `google recaptcha` for button widget.

> Hide certain features on airgap instance

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


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


## Type of change

> Please delete options that are not relevant.


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



## How Has This Been Tested?

- 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-12 00:04:23 +05:30
Keyur Paralkar
d313798e6f
fix: null check before accessing accessing properties in table and phone input widget (#22218)
## Description

Fixes #22207
Fixes #22209 

The [sentry](https://github.com/appsmithorg/appsmith/issues/22207) issue
occurred because the code was trying to access the `sticky` property of
a column that did not exist in the table widget. Hence to mitigate this
I have added an optional chaining check.

This PR also fixes #22209 by adding optional chaining while accessing
the `text` prop in the phone input widget

## Type of change

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

## How Has This Been Tested?

- Manual
- Check that the console error is not thrown similar to the above sentry
issue.

### 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
- [ ] 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-11 19:53:14 +05:30
Ravi Kumar Prasad
7fe8dae744
fix: CSS broken after action selector redesign changes (#22214)
## Description
After the [Action selector redesign
PR](https://github.com/appsmithorg/appsmith/pull/21582) was merged into
release. Due to some newly added global styles, the existing CSS was
broken at few places. This PR ensures the styles added for action
selector are scoped only inside the action selector popup to avoid
globally applying those styles.

Fixes #22210


**Media**
Fix for the originally reported issue. See the linked issue above.
<img width="412" alt="Screenshot 2023-04-10 at 2 13 20 PM"
src="https://user-images.githubusercontent.com/13567359/230867849-9575c49e-d8d2-43b7-aec0-763448000a60.png">

Screenshots to ensure Action selector CSS is not broken.
Without CSS styles | With CSS styles scoped inside popup
-- | --
<img width="490" alt="Screenshot 2023-04-10 at 2 04 54 PM"
src="https://user-images.githubusercontent.com/13567359/230868208-fd350784-b268-4977-8106-77f54e702412.png">|<img
width="433" alt="Screenshot 2023-04-10 at 2 05 58 PM"
src="https://user-images.githubusercontent.com/13567359/230868217-2194b7e2-e1a6-40a3-9420-55b9869debab.png">



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

## How Has This Been Tested?
- 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
- [ ] 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: Aishwarya UR <aishwarya@appsmith.com>
2023-04-11 13:40:15 +05:30
Rimil Dey
2bac17b1af
fix: Alphanumeric sorting of options in action selector sub menu (#22216)
## Description

- The selector view in the action selector had options being sorted
alphabetically. The sorting logic was not considering alphanumeric
values where the order should be Page1, Page2, Page10, Page21 instead of
Page1, Page10, Page2, Page21
 - Add tests for the fix
 - Move the logic to its own functions

Fixes #22178 

**Media**

![Screenshot 2023-04-10 at 2 33 48
PM](https://user-images.githubusercontent.com/10229595/230870454-351dacb0-0f2a-4a6e-abe6-a9376363684f.png)

![Screenshot 2023-04-10 at 2 34 02
PM](https://user-images.githubusercontent.com/10229595/230870486-77062728-7212-44ba-9af1-4d90080c87a8.png)

![Screenshot 2023-04-10 at 2 33 17
PM](https://user-images.githubusercontent.com/10229595/230870543-20e438eb-0ebc-4cd8-b051-0b386f2ee772.png)

![Screenshot 2023-04-10 at 2 33 28
PM](https://user-images.githubusercontent.com/10229595/230870579-46db0082-ac49-48a9-a211-fefb7ae831a6.png)


## Type of change

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


## How Has This Been Tested?

- Manual
- Jest

### 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
- [ ] 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-11 12:56:49 +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
Aishwarya-U-R
217c40b20b
test: Cypress - Flaky fix (#22247)
## Description

- This PR fixes below flaky test in CI:
- Button_onClickAction_spec.js

## Type of change

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


## How Has This Been Tested?

- Cypress local run

## Checklist:

### QA activity:
- [X] Added Test Plan Approved label after reviewing all changes
2023-04-11 00:36:26 +05:30
Aishwarya-U-R
afc278fd9b
test: Cypress - Flaky fix (#22240)
## Description

- This fixes the Firestore spec that fails sometimes in CI due to all
runs accessing the same cloud collection for validation
- BasicLint_spec

## 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-10 22:35:09 +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
Aishwarya-U-R
5f1e4d1ba8
test: Cypress - flaky fix + Git comment improve (#22169)
## Description

- This fixes the Firestore spec that fails sometimes in CI due to all
runs accessing the same cloud collection for validation.
- This PR also adds comments to PR - if all cypress cases passed, right
now there is no comment

## Type of change

- Script update

## How Has This Been Tested?

- Cypress CI runs


## Checklist:
### QA activity:
- [X] Added Test Plan Approved label after reviewing all Cypress test
2023-04-10 17:41:14 +05:30
Anand Srinivasan
5f12a77e10
chore: fix merge conflict (#22217)
Adding a class used for test cases in EE.


https://github.com/appsmithorg/appsmith-ee/pull/1132/files#diff-2bf42f6d56d5e36ea2878cfbcc7adacf12443855ea03055e39f632402b8921fe

This created a conflict
[here](https://github.com/appsmithorg/appsmith-ee/actions/runs/4656127341/jobs/8239454392).
2023-04-10 15:32:47 +05:30
Anand Srinivasan
86801d9ed2
feat: 5xx error message with links (#21917)
## Description

Updated error messages with link for 503 error page

https://www.figma.com/file/nVvIoLuCmTjvivejSnCML8/5XX-Error-states?node-id=2-179&t=Z6nt7OQB00EjeWt5-0

Fixes #21524

## Media

CE cloud hosted:
- Link opens a email to support@appsmith.com
https://www.loom.com/share/9f904f0b97844961b9be3235780095d5

CE self hosted:
- first link opens
[documentation](https://docs.appsmith.com/learning-and-resources/how-to-guides/how-to-get-container-logs)
- second link opens relative path `/supervisor/logtail/backend`
https://www.loom.com/share/d39070575ca943fda1e6b49368cde1d5

EE: (same as CE self hosted, but without appsmith label)
Addressed here: https://github.com/appsmithorg/appsmith-ee/pull/1245
https://www.loom.com/share/65568d09b76044309de2e42aac3cc0fe


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


## How Has This Been Tested?

- Manual

### Test Plan
> Added Test cases
[links](https://github.com/appsmithorg/TestSmith/issues/2368) 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
- [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 14:33:20 +05:30
Shrikant Sharat Kandula
b4570847e2
chore: Disable all caching during dev time (#22173)
Caching causes more problems than it solves, during development time.
This PR explicitly disables all cache during development.
2023-04-10 13:25:17 +05:30
Hetu Nandu
c2dbebf9b7
fix: Do not set widget ancestry if selection happens via canvas (#22069)
## Description

Implemented in #21317. A problem arose where if a widget that exists
inside a tabs widget is setting the default value of the tab in order to
navigate change the tab, it would fail to switch it because the selected
widget logic takes over.

> Improve selected widget visibility by skipping feature when selection
happens via a canvas click

Fixes #22070


Media



https://user-images.githubusercontent.com/12022471/229714138-55f89cda-3c27-4953-91c0-46f5a9834adf.mov




## Type of change

> Please delete options that are not relevant.

- 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
2023-04-10 12:55:14 +05:30
Sangeeth Sivan
82280cfde9
feat: util to serve images locally or via remote url (#22080)
## Description

- On air-gapped instances we can't fetch appsmith assets from S3, that
will result in broken which is not desirable.
- So this adds a script and util function which searches the client and
server codebase for the assets url and downloads the image and puts it
in the `public` folder so that the browser can access those even in an
airgapped instance since the assets are being served locally.

> Way to serve assets locally.

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

Media
https://vdqm24wed6.vmaker.com/record/IquS90WbWgS1I0bz - blocked certain
api routes from getting called on airgap
2023-04-10 12:32:31 +05:30
Rishabh Rathod
df9c684db1
fix: Changes to fix ee jest test (#22188)
Changes to fix the jest test failure on EE.
2023-04-10 11:13:31 +05:30
Preet Sidhu
6a8806f629
feat: Add widget responsiveness and conversion algorithm (#21386)
## Description

QA branch for mobile responsiveness

---------

Co-authored-by: Aswath K <aswath@appsmith.com>
Co-authored-by: Arsalan Yaldram <arsalanyaldram0211@outlook.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>
2023-04-07 09:51:35 -04:00
Pawan Kumar
74237ee923
chore: adds truncate and line clamp props to text component (#22153)
Fixes #21920
Fixes #21925

## 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
2023-04-07 17:29:01 +05:30
Rishabh Rathod
d6372d0b81
feat: JSObject variable as a state (JSObject variable mutation) (#19926)
Fixes #19653 
Fixes #14568 
Fixes #17199
Fixes #14989

In this PR, we introduce a new feature in JSObject where the `variables`
are now state and widgets are reactive to the change in the variable
value.
- It means that `JSObject.myVar1 = "Hello world"` would show `Hello
world` where ever a binding `{{JSObject.myVar1}}` is used.

Further changes
- JSObject run functionality, executes all the functions in async
evaluation.
    - `executeSyncJS` flow is removed 
-  `resolvedFunctions` state is moved to JSCollection class.
- unEval JSObject value i.e., currentJSCollectionState is moved to
JSCollection class.
- `evalTreeWithChanges` is introduced - A new flow to trigger evaluation
from the worker and send the updated dataTree to mainThread.
- This would open up a new possibility of features in evaluation
mentioned
[here](https://www.notion.so/appsmith/RFC-Dependent-Property-in-Widgets-f3b29ad652b549dd8c49189f48dbbc4b)
- Introduction of `updateDataTreeHandler` to accept new dataTree from
the worker.
## Type of change

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

## How Has This Been Tested?

### Jest Test
- `Mutation.test.ts` 
- `JSVariableProxy.test.ts`
-  `removeProxy.test.ts`

### Cypress test
- Mutation with 
   - numbers
   - array
   - object
   - map
   - set

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

### Issues raised during DP testing

- https://github.com/appsmithorg/appsmith/pull/19926#issuecomment-1453275688
- https://github.com/appsmithorg/appsmith/pull/19926#issuecomment-1478975487
- https://github.com/appsmithorg/appsmith/pull/19926#issuecomment-1482929425
- https://github.com/appsmithorg/appsmith/pull/19926#issuecomment-1486611858

Co-authored-by: Rimil Dey <rimildeyjsr@gmail.com>
Co-authored-by: Rimil Dey <rimil@appsmith.com>
Co-authored-by: arunvjn <32433245+arunvjn@users.noreply.github.com>
2023-04-07 13:11:36 +05:30
sneha122
67f7571f1e
fix: specific sheets to whole drive issue fixed (#21968)
This PR fixes the issue:
- Spreadsheet dropdown does not show all sheets, when google sheet
datasource is edited from specific sheets to all sheets.
- If files are picked in the file picker, no error message is shown on
datasource review page, but if files are not picked, error message is
shown on review page.

Fixes #21916
2023-04-07 07:31:27 +05:30
Keyur Paralkar
3ee46ffd14
fix: add select options field to new row (#22003)
## Description

This PR introduces new two new properties: `Same options in new row` and
`New row options` for the select column type.
We show these two fields when the allow add new row is turned on in
table
- SameOptionsInNewRow -- Boolean field ; When turned on the option for
the first row is used in the new row. Default is true
     - Label : Use same options in new row
- Tooltip : Toggle to display same choices for new row and editing
existing row in column.
- NewRowOptions -- Array field; when the above boolean is turned off we
show this option to let people add options specifically for new row.
Supports static and dynamic data, but doesn't support currentRow
    - Label: New row options
- Tooltip : Options exclusively displayed in the column for new row
addition.

Fixes #20230


## Type of change

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


## How Has This Been Tested?

- Cypress:
- When allowAddNewRow is turned on, same new option should be true and
new row option should be invisible.
- When turned on same option, options of the first row should appear
while editing as well as adding new row.
    - When turned off, New row option should be visible
- Fill new row options, the new row options should appear while adding
new row in select field.
    -  New row options should not have access to the currentRow
- Both the options should only be visible only when allowNewRow is true.
    -  Should support static and dynamic values in new row options

- Manual
- For the new DnD Tables. Check if the above functionality is working as
expected.
- For Existing tables, Check if the above functionality is working as
expected. This needed to be tested from migration standpoint

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

### 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-06 23:58:24 +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
sneha122
49fb6ae852
feat: gsheet disable new query when no files selected (#21912)
## Description

This PR adds:
- When gsheet datasource is created with "Selected Sheets" Modality, and
if user fails to select any files from file picker
    - we should disable new query creation
    - we should show error message banner on datasource review page

**How to test:**
- Create google sheet datasource, break the authorisation flow, check
review page, error message like "Data source is not authorized, please
authorize to continue." would be shown.
- Edit datasource, complete the authorisation but do not pick any files
from file picker, error message like "Datasource does not have access to
any files, please authorize google sheets to use this data source" would
be shown


Fixes #20290

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

### 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
- [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-04-06 19:42:34 +05:30
Ankita Kinger
e5b7409d5f
fix: Alignment issues on the invite modal and the members page (#22122)
## Description

> Alignment issues on the invite modal and the members page

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

## 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?
- 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-06 18:33:49 +05:30
Dipyaman Biswas
25024c0c79
fix: fix usage pulse fallback (#21735)
## Description

Added a fallback value (crypto.randomUUID) when there is an issue with
generating the key from segment

Fixes #https://github.com/appsmithorg/cloud-services/issues/582
Fixes #https://github.com/appsmithorg/cloud-services/issues/583


## 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?
- 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
- [ ] 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: balajisoundar <balaji@appsmith.com>
2023-04-06 17:51:58 +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
SatVeer Singh
59eb56053c
fix: [Community Contribution] tooltip for the orange deviation dot prevent overflow out of screen fixed (#21992)
## Description

This PR fixes the tooltip overflows from the screen when hovering on it.
If the property name is a little long and the user has selected a value
that is different from the theme, the deviated form theme orange dot
appears. When hovering over it, the tooltip overflows from the screen.

Fixes #17604


Media
![tooltip
fix](https://user-images.githubusercontent.com/85070570/229344497-bc37aba1-dcbf-41c7-86ec-55c1d6b0842e.png)



## Type of change

- Bug fix (non-breaking change which fixes an issue)
2023-04-06 16:07:33 +05:30
arunvjn
385f73f9e8
chore: Added generic error handling logic to prevent evaluation worker crash (#22100)
## Description
When an action is invoked, for eg. `storeValue(key, value)`, we post a
message([postMessage](https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage))
from worker to main thread to process the action. There are certain data
(non-serializable) that cannot be passed between threads, for eg.
function. This causes postMessage to throw a `DataCloneError` (from
internal
[structuredClone](https://developer.mozilla.org/en-US/docs/Web/API/structuredClone)
algorithm) and can potentially cause the worker to crash.
This PR adds a generic error handler to prevent the worker from crashing
at any point.

Fixes #22106

## Type of change
- Chore

## How Has This Been Tested?
- 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-06 07:49:01 +00:00
SatVeer Singh
d92ebf8f1a
fix: [Community Contribution] Show more button should become show less when clicked (#21989)
Fix: Active datasource listing: Show more button should become show less
when clicked

## Description
In the active datasource listing page, when the user clicks on "show
more", the button name should be changed to "Show less".
In general, show more is changed to show less as a good usability
practice.

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

Fixes #21368


Media
[Screencast from 2023-04-01
23-01-04.webm](https://user-images.githubusercontent.com/85070570/229305889-e7e75150-2ce5-4139-90c5-d3f199ce446e.webm)



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



## How Has This Been Tested?
- Jest

## 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-04-06 13:01:01 +05:30
Favour Ohanekwu
f48972b81c
chore: lint bundling optimization (#22144) 2023-04-06 07:45:09 +01:00
Hetu Nandu
3e8ff46716
fix: Cannot navigate out of an error page (#22021)
## Description

When an error occurs, we take over the whole router and keep it the
error state till the errors are flushed. By default, we will flush out
the error state when a CTA on the page is clicked but in case the user
navigates via the browser buttons, this will ensure the errors are
flushed

> Clear out errors when using browser navigation buttons to avoid error
page persistence

Fixes #18564
Fixes #22068

Media


https://user-images.githubusercontent.com/12022471/229461625-d4bfc72f-c551-4063-aad8-8ba8b97f2db5.mov


## 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
- [ ] 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-06 11:50:35 +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
arunvjn
cce49a5f6a
fix: Removes aws from the list of recommended libraries. (#22054)
## Description
Most APIs that AWS library exposes expects the availability of XHR and
it cannot be safely enabled at the moment. This PR removes AWS from the
list of recommended libraries. We'll add it back in the future when we
can safely enable XHR.

Fixes #22045

## 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
- [ ] 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 20:32:23 +05:30
Valera Melnikov
e50b31b65c
feat: wds button refactoring (#21849)
## Description

1. Moved `wds` to the `design-system` folder. 
2. Added `headless` package and `HeadlessButton`.
3. Added `theming` package. `ThemeProvider` and two classes were created
to work with
tokens([TokensAccessor](https://github.com/appsmithorg/appsmith/pull/21849/files#diff-58832e8b8e8017648929473a90eb716e6a2671ba1749be3d4c5665b093bc3dc3))
and
colors([ColorsAccessor](https://github.com/appsmithorg/appsmith/pull/21849/files#diff-f515e0eefc418c8bfc0710572e83a0029bd94f2fb975853f71730e5b11c774bd))
5. The token structure has been changed. The same class(TokensAccessor)
is now used to create CSS variables and tokens for
Figma([themeTokens.json](https://github.com/appsmithorg/appsmith/pull/21849/files#diff-5ad75b848cb4254c0bd0bb0bf6a89eeccb628dc0012752172654e12e62d570d9))

The final storybook is
[here](https://widget-design-system-b1p6g13iq-get-appsmith.vercel.app/?path=/story/design-system-widgets--button).

## Type of change

- New feature (non-breaking change which adds functionality)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update


## How Has This Been Tested?
- 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

---------

Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
2023-04-05 18:09:11 +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
Saroj
33514cbde3
test: Disable the gsheet test (#22111)
## Description
- Disable gsheet tests

## 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-04-05 14:34:24 +05:30
Hetu Nandu
8dd33068ab Remove server error cases 2023-04-05 14:09:00 +05:30
Anand Srinivasan
69f7b5ff86
chore: fix tests in ee (#22071)
Updated imports.

Fixes `WindowMessageListener_spec.ts`.

Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-04-05 11:08:25 +05:30
Vijetha-Kaja
ef680d176b
test: Cypress - Flaky test fix (#22059)
## Description

**Fixed below flaky tests**

- Command_Click_Navigation_spec.js
- List4_spec.js
- Select_spec.js
- PassingParams_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
2023-04-04 23:01:14 +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
sneha122
c8cd459f39
feat: Added file id mapping in datasource config (#21699)
## Description

This PR adds:
- File Id mapping of the google sheets selected by user, in datasource
configuration, so that when creating queries on top of such gsheet
datasource, only the selected spreadsheets can be seen in the
spreadsheet dropdown.

Changes done on client side:
- As soon as user selects file in file picker popup, the callback will
get the file ids and update the datasource to contain file ids as a part
of datasource configuration properties.
- If user cancels the file selection, file ids is sent as empty array
and datasource is updated.

Changes done on server side:
- In `GoogleSheetPlugin.java` where we have defined execute and trigger
methods for gsheet query, here I have added a new variable
allowedFileIds, which gets the list of authorised file ids from
datasource configuration object and the same list is passed to functions
like `transformTriggerResponse` and `transformExecutionResponse`, which
returns file list data based on the allowedFileIds. In FileListMethod
class, these methods contain the logic to send only authorised file
data.
- Since these two methods are a part of triggerMethod and
executionMethod interfaces, all gsheet query operation classes that
extend this method, their function definition needed to be updated with
this third allowedFileIds parameter.
- Similarly all gsheet query operations test classes were using these
two methods, and hence this third parameter needed to be added there as
well.

How to test:
- With this improvement, when we select `file1` and `file2` for one
datasource and `file3` and `file4` for another datasource, In the query
dropdown for first ds, we should only see `file1` and `file2`, for
second datasource, we should only see `file3` and `file4`.
- Please check following gsheet operations:
    - Fetch Many
    - Fetch Details
    - Update One
    - Update Many
    - Insert Many

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

Fixes #21074


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
- JUnit

### 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
- [ ] 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-04-04 13:43:49 +05:30
Aishwarya-U-R
8c242c67ad
test: Cypress - Fix reference issue in spec for Sanity suite (#22067)
## Description

- This PR fixes the reference issues for the Sanity suites

## Type of change
- Script update

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

## Checklist:
- [X] Added Test Plan Approved label after reviewing all changes
2023-04-04 12:10:04 +05:30
Aishwarya-U-R
ceefaa00bc
Test: Adding Smoke & Sanity suites into the CI pipeline (#22029)
## Description

- This PR introduces smoke & sanity tests into the CI pipeline, to
capture the failures early.

## Type of change

- CI Improvements


## How Has This Been Tested?

- Cypress runs on local PR workflows

## Checklist:

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

---------

Co-authored-by: Saroj <saroj@appsmith.com>
2023-04-04 10:39:40 +05:30
Hetu Nandu
0094aab735
fix: [Git] Avoid 404 when checking out a branch (#21894)
## Description

After checkout, we will now check if the resource the user was accessing
is available in the incoming branch. Instead of calling the apis to
check this, we will listen to the success action and then handle check
if the current resource is still available in the branch. If not, we
will navigate the user to the home page of the app so that they do not
see a 404 error


> Don't show a 404 error when a resource is not available in the checked
out branch, instead take them to the home page of the app

Fixes #17234
Fixes #20883


Media



## Type of change

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


## How Has This Been Tested?

- Manual
   - Have a git connected app
   - Create a new branch 
   - Create a new API/Query/Page on the new branch
   - Switch back to the original branch
- Test: The app should not show 404 error but be navigated to the home
page of the app

- Cypress
Updated the existing cypress tests that avoided the error to make sure
they test the fix instead

### 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-04 10:29:00 +05:30
arunvjn
0bc324b8ba
fix: fixed broken file downloads for urls containing "(" or ")" (#21752)
## Description
- fixed broken file downloads for urls containing "(" or ")"
- Modified regex that checks to see if a string is a URL.
- Added unit tests for isURL utility method.

Fixes #13915 

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

## How Has This Been Tested?
- Manual
- 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
- [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
2023-04-03 23:23:10 +05:30
Ankita Kinger
d41e3d94e3
chore: Updating empty state for members in the invite modal (#22026)
## Description

Updating empty state for members in the invite modal. Earlier, we used
to show a message that email setup needs to be completed to invite
users, but this doesn't hold true today. So we are removing this and
adding the message "You haven't invited any users yet" in case there are
no members to show in the invite modal.

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

## Type of change

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


## How Has This Been Tested?
> This has been tested manually and works as expected.

- 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-03 20:09:13 +05:30
Ankita Kinger
5bd6e357ba
fix: Updating logic for redirection on Members settings page on Workspace settings (#22039)
## Description

> Updating logic for redirection on Members settings page on Workspace
settings

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

## Type of change

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

## How Has This Been Tested?
> Tested it manually on my local and works as expected now.

- 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-03 19:56:34 +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
Hetu Nandu
1b92f97d61
chore: Move error from saga to action creator (#21944)
## Description

Improve error reporting for missing page id

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


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


## Type of change

> Please delete options that are not relevant.

- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update


## 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-03 15:11:30 +05:30