Commit Graph

8 Commits

Author SHA1 Message Date
Hetu Nandu
cdd33a846f
feat: cURL import now happens via a modal (#34830)
## Description

Adds the cURL import flow to go through a modal instead of editor level
screen. This is done to ensure the IA is correct as per IDE 2.0
standards

Fixes #32942

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]
> 🔴 🔴 🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9869174972>
> Commit: 6143c1c79c0bb7c6a4899fc477985d0ed23699df
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869174972&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec: 
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js
>
<li>cypress/e2e/Regression/ClientSide/PartialImportExport/PartialExport_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Wed, 10 Jul 2024 07:56:03 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

- **Refactor**
- Updated test case function calls and refactored imports to improve
code structure and maintainability in multiple files related to CURL
import flows.
- Consolidated and rearranged steps in CURL import flow test cases for
better readability and organization.

- **New Features**
- Introduced `AppCURLImportModal` component to handle CURL command
imports within the API editor.
- Added constants `SET_CURL_MODAL_OPEN` and `SET_CURL_MODAL_CLOSE` for
managing the state of the CURL modal.

- **Style**
- Updated selector formats and added proper commas in the `ApiEditor.js`
file.

- **Chores**
- Removed unused constants and functions related to CURL import page
paths across multiple files for cleaner codebase.
- Streamlined the management of the CURL import modal state in the
reducer and added relevant selectors.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-10 14:22:39 +05:30
Aman Agarwal
d070ca76b0
fix: add a warning icon and tooltip to indicate empty datasources (#33618) 2024-05-23 12:43:56 +05:30
Hetu Nandu
f939d20569
chore: Split routing for split screen (#31151) 2024-02-16 14:08:28 +05:30
Hetu Nandu
51e2a9fc14
chore: Tabs overflow list (#31024)
## Description

Show a list of items that are unopened in the tabs bar.

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


#### Media



https://github.com/appsmithorg/appsmith/assets/12022471/c940d67f-db4d-4675-bc4e-e7df562956f0


#### Type of change

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

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


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


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

## Summary by CodeRabbit

- **New Features**
- Introduced icons for different entities in the IDE, enhancing visual
representation.
- Added a new component for rendering buttons with dropdown menus in the
editor tabs, improving navigation.
- **Enhancements**
- Improved tab navigation and history management in the IDE, offering a
more seamless user experience.
- Refactored editor tabs to accept dynamic props, allowing for more
flexible configurations.
- **Style Updates**
- Added new styled components for icons, ensuring consistency and better
UI aesthetics.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-12 09:47:40 +05:30
Hetu Nandu
38d37ba874
chore: Split files for Module Instances in IDE (#30562)
As part of updating the IDE IA Redesign, we are splitting certain
functionalities so that they can be extended on the EE side.

Summary of changes:
- Create a `WithAddView` interface in RouteBuilder to indicate a
scenario where the url can be suffixed with a `/add` to have edit and
add views together
- Create a common GroupedList component
- Adds a dummy JS Add screen and routes. Wont navigate to it via the
system
- Move `EntityItem` interface to a more common location for
extensibility
- Update FocusElement config type to allow for a limited targeting in
FocusStrategy
- Extracted out ListItem render components for JS and Query
- Moved JS and Query segment hooks to a CE location for extensibility of
AddQuery and ListQuery
- Extracted EditorPaneRoutes for extensibility
- Added FocusEntity entries for QueryModuleInstance and
JSModuleInstance. This will be cleaned up at a later date.


Companion EE PR: https://github.com/appsmithorg/appsmith-ee/pull/3389

Fixes: #30544



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

## Summary by CodeRabbit

- **New Features**
- Introduced an interface for adding views to enhance URL generation for
different editor functions.
- Added new user-facing messages for creating blank JavaScript objects
in the editor.
- Implemented new hooks and components to manage and render JavaScript
and Query entities within the IDE.
- Created a grouped list component for categorizing items within the
editor pane.

- **Enhancements**
- Extended existing enums and utilities to support new module instance
types and actions.
- Improved navigation and focus management within the IDE based on user
interaction and context.
- Streamlined the process of adding JavaScript operations and queries in
the editor.

- **Refactor**
- Updated import paths for better code organization and module
resolution.
- Removed redundant code and replaced components with more efficient
implementations.

- **Bug Fixes**
- Corrected the behavior of the `Files` component to handle undefined
types appropriately.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-24 14:22:40 +05:30
ashit-rath
ae5843f844
chore: refactor to support fetching of collections for mongo plugin in modules (#30257)
## Description
Extracted function to resolve action url for reuse
Extracted editor paths to be extended in EE to be used in matchBasePath

#### PR fixes following issue(s)
PR for https://github.com/appsmithorg/appsmith-ee/pull/3286
> 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
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


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


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

## Summary by CodeRabbit

- **Refactor**
- Streamlined editor path declarations and usage across different
components.
- **New Features**
- Enhanced URL resolution for action plugins, improving navigation
within the editor.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-12 18:02:26 +05:30
Hetu Nandu
e95a82c03b
chore: Split screen foundations (#30060)
Improves foundations for Upcoming Split Screen changes

fixes: #29953

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

## Summary by CodeRabbit

- **New Features**
	- Added new routing for list views and full-screen modes in the IDE.
- Introduced `SplitScreenRoutes` and `FullScreenRoutes` components for
enhanced query editing experience.
- Implemented new `ListWidgets` component for managing widgets within
the editor.
- New `Container`, `FullScreenTabs`, and `SplitScreenTabs` components
for better tab management in the IDE.
- Added functionality to render JavaScript editor and list view based on
IDE view mode settings.

- **Enhancements**
- Updated the IDE with a new `EditorTabs` component replacing
`FileTabs`.
- Improved editor pane with dynamic width adjustment and side-by-side
view capability.
- Enhanced segmented header with new options and conditional button
rendering.

- **Refactor**
- Renamed `EditorViewMode` enum value from `HalfScreen` to
`SplitScreen`.
	- Updated message constants across various components for consistency.
- Reorganized import paths and component names for better structure and
readability.
- Removed unused code and updated import statements for `EmptyState`
components.
	- Consolidated editor pane text constants for unified messaging.

- **Bug Fixes**
- Fixed routing issues by integrating new paths and components based on
editor settings.
- Resolved inconsistencies in widget list management and editing
features.
- Corrected message references in `JSBlankState` and `QueriesBlankState`
components.

- **Documentation**
	- Updated class and ID names in the codebase for clarity.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-09 15:28:27 +05:30
Hetu Nandu
8cb733937c
chore: Refactor Context Switching (#29966)
## Description

Refactors the Context Switching functionality to make it usable of
different IDE types. It now will set a `FocusStrategy` based on the IDE
type { App, Module, Workflow } and perform the same operations.
Implementation of `FocusStrategy` for other IDE types will be done on
the EE side. It removes all dependence of `pageId` from the core
functionality and relies on the Strategy implementation to define what
states to store and set, and the key used for them.

Also renamed the functionality to `FocusRetention` for more clarity.


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

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

## Testing

#### How Has This Been Tested?

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

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


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


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

- **New Features**
- Added functionality for managing focus elements within the
application's integrated development environment (IDE).
- Introduced a focus strategy for handling focus elements in the
application.

- **Refactor**
- Restructured code for focus management configurations and strategies
to improve clarity and efficiency.
- Renamed `ConfigType` enum to `FocusElementConfigType` for better
reflection of its purpose.

- **Bug Fixes**
- Resolved issues with focus state restoration during navigation between
different URLs.

- **Tests**
- Updated test cases to align with the new focus management logic and
IDE type checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-08 11:09:47 +05:30