Commit Graph

14 Commits

Author SHA1 Message Date
Valera Melnikov
69a0cb7160
fix: jest tests (#39839)
## Description
[Part of EE PR](https://github.com/appsmithorg/appsmith-ee/pull/6688).
I'll check what happens to the NumberFormat locale later, now just make
sure that unit tests pass.

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

## Automation

/ok-to-test tags=""

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

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


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


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

## Summary by CodeRabbit

- **Tests**
- Refined currency display tests to ensure accurate formatting with
three-decimal precision, improving the internationalized number
presentation.
  
- **Chores**
- Enhanced the testing environment with additional global utilities and
mocks, streamlining simulation of locale-specific behaviors and API
responses.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-03-21 02:05:05 +03:00
Ayush Pahwa
afa2324432
chore: add eslint package to handle linting (#37417)
## Description
We are shifting the linter engine for jshint to eslint. This PR adds the
package needed for the same and also adds the required configs. The
eslint feature is behing a rollout feature flag, it's currently at 0%
right now.

> [!NOTE] > This PR is part of a series of [stacked
diffs](https://newsletter.pragmaticengineer.com/p/stacked-diffs) and
might have changes from it's parent PRs. Untill the blocking parent PRs
are merged, this diff would show more changes than are relevant for this
PR.
Blocking PRs: - #36548 

Fixes #37254 

## Automation

/test js sanity

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


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


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

## Release Notes

- **New Features**
- Integrated ESLint support alongside existing JSHint functionality for
enhanced linting capabilities.
	- Added a new dependency for ESLint linting.

- **Improvements**
- Enhanced error handling and reporting for linting errors, ensuring
consistency across different linting tools.
- Updated testing framework to accommodate multiple linter types without
duplicating logic.
- Introduced new functions for sanitizing and converting ESLint errors
to the application's format.
	- Added support for structured cloning in the testing setup.
- Improved logic for determining main actions and error handling in
conditional expressions.

- **Bug Fixes**
- Improved logic for handling lint errors, particularly in
differentiating between ESLint and JSHint errors.

- **Documentation**
	- Updated comments for clarity on linting processes and configurations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-22 14:26:05 +05:30
Ayush Pahwa
cc83b1667b
chore: update jest version to 29 (#37587) 2024-11-21 18:35:02 +08:00
Abhinav Jha
acfb1f4b7a
chore: Add SAVE_ACTION analytics event (#25997)
## Description
- This PR renames the `SAVE_QUERY` and `SAVE_API` events to a generic
`SAVE_ACTION` analytics event.
- The new event will include the following new properties
- `originalActionId` - The `originalActionId` of the action from which
this action was copied or the `id` action from which this action was
copied.
    - `hash` - A unique hash of the `actionConfiguration` of this action
    - `actionType` - The plugin type for this action
- This PR also fixes an issue where the `originalActionId` was not set
correctly when an action was copied

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

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

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

#### Test Plan
#### Issues raised during DP testing
2023-08-07 15:01:45 +05:30
Dhruvik Neharia
099859134d
feat: Improved App Navigation (#19312)
## TL;DR
A new revamped experience for navigation for Appsmith users.

## Description 
Introduces new navigation styles with better default navigation - Top
(Stacked), a variant for Top (Inline), and a collapsible Sidebar.
Configure your app's navigation by navigating to the navigation settings
tab inside the app settings pane and observe how your app with the
selected navigation settings will look side by side as you change them.

This PR pushes the v1 for EPIC #17766.

Fixes #19157
Fixes #19158
Fixes #19174
Fixes #19173
Fixes #19160
Fixes #20712
Fixes #19161
Fixes #20554
Fixes #20938
Fixes #21129

## Media
<video
src="https://user-images.githubusercontent.com/22471214/227187245-84e4e3fa-18e4-4690-8237-cfce29f432e5.mp4"></video>

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

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

### Test Plan

https://www.notion.so/appsmith/Test-Plan-a7883ae4980d470690de5c62a41dd168

### Issues raised during DP testing

https://docs.google.com/spreadsheets/d/1Kocq8h1H3EXlbqDgiNruzBr9MeNPyY26zct8IWYEY40/edit#gid=0

## 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: Pawan Kumar <pawan@appsmith.com>
2023-03-23 17:11:58 +05:30
Sangeeth Sivan
072465b9c1
chore: add redux saga testing utils (#21354) 2023-03-15 11:09:46 +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
Favour Ohanekwu
1379180ecd
feat: Split evaluation and linting (#17287)
* Evaluations and Linting now runs on separate web-workers for a much faster and responsive coding experience on Appsmith.
* Removed worker-loader webpack plugin.
2022-11-03 14:53:15 +05:30
Aswath K
8724f1c4fa
fix: Unwanted width calculation in Dropdown (#15239) 2022-07-20 06:05:44 +00:00
Ashok Kumar M
2a8e37bf3b
feat: Sliding Canvas for Dragging and Selection (#9983)
* Move existing canvas's to CanvasArenas folder

* moving hooks to canvas arenas folder.

* Sticky canvas implementation.

* fixing specs(WIP)

* dip

* fixing test cases.

* removing comments.

* fixing build

* renaming for readability.

* adding folder for canvas based sagas.

* Resolve conflicts.

* fixing failed cases.

* fixing cypress cases.

* fixing bugs introduced coz of drag and drop.

* fixing bugs.

* few more bug fixes in draw to select.

* mouse pointer default when drag to select.

* bug fix.

* dip

* integrating intersection api.

* dip need to adjust offset

* fixing offset issues.

* readability fix

* rebase bug fixes.

* bug fix.

* adjust canvas slider on mouse over.

* unwanted changes.

* left offset fix + removing dead code.

* fixing bugs.

* fixing broken test cases.

* addressing code review comments.
2022-01-25 20:58:31 +05:30
Ashok Kumar M
f19ebbafe9
[Feature] Widget grouping - Allow Drag and Drop of multiple widgets. (#5389)
* dip

* dip

* scroll

* fixes

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* dip

* solve for canvas glitches

* dip

* dip

* dip

* adjust scroll speed

* dip

* dip(code clean up)

* dip

* dip

* ---dip

* dip

* dip

* dip

* middle ware for dropping multiple widgets.

* adding scroll to drag for canvas selection.

* fixing drag disabled and modal widget(detach from layout) drops

* firefox and safari fixes

* rebase conflicts.

* fixing broken specs.

* fixing specs and adding jest tests.

* show border and disable resize when multiple widgets are selected.

* selection box grab cursor

* merge conflicts.

* code clean up

* fixing specs.

* fixed a bug and failed specs.

* fixing rerenders.

* code clean up

* code review comments

* always have the drag point inside the widget.

* fetching snap spaces instead of calculating.

* remove widget_move action

* fixing bugs with add widget parent height updation.

* fixing specs.

* List widget conflict fixes.

* fixing canvas drop persistence.

* Adding click to drag for modals and fixing few issues.
2021-08-12 11:15:38 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Ashok Kumar M
8c8141650a
Feature: Widget grouping Phase I (Multi select and Bulk Delete) + Canvas Enhancements. (#4219)
* Feature: Canvas layer enhancements(DIP)

* feedback fixes

* fixing build

* dip

* dip

* dip

* fixing build

* dip

* dev fixes

* dip

* Fixing top bottom resize handles

* dip

* reposition widget name on top edges.

* dip

* dip

* dip

* dip

* renaming selectedWidget to lastSelectedWidget

* code clean up

* Fixing list widget as per grid scale.

* Fixing existing specs.

* Adding migration test cases.

* dip

* FIxing proppane in modal.

* fixing modal z-indedx.

* fix for modal name.

* dip

* dip

* dip

* adding test cases for hotkeys.

* dip

* dip

* fixing build

* Trying some performance improvements for jests.

* 17 mins with runinband lets try without it.

* minor bug fixes.

* code clean up

* save migrated app on fetch.

* fixing few cypress tests

* fixing cypress tests

* fixing cypress tests.

* fixing cypress

* updated DSL

* Addressing code review comments.

* test fails

* dip

* eslint fixes.

* fixing debugger cypress tests.

* updating latest page version.

* updating migration changes to cypress dsl's.

* updating chart data fixes for cypress tests.

Co-authored-by: Apple <nandan@thinkify.io>
2021-05-18 23:59:39 +05:30
Rishabh Saxena
244930dd69
Add support of component unit testing (#3828)
Update jest config, add msw hooks
2021-04-02 15:17:16 +05:30