Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Revert "feat: Overflow tabs list view" #34613

Merged
merged 2 commits into from
Jul 2, 2024

Conversation

albinAppsmith
Copy link
Collaborator

@albinAppsmith albinAppsmith commented Jul 1, 2024

Description

This reverts commit 519b53e.

Fixes #Issue Number
or
Fixes Issue URL

Warning

If no issue exists, please create an issue first, and check with the maintainers if the issue is valid.

Automation

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

🔍 Cypress test results

Tip

🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/9755650204
Commit: 3e273b6
Cypress dashboard.
Tags: @tag.All

Communication

Should the DevRel and Marketing teams inform users about this change?

  • Yes
  • No

Summary by CodeRabbit

  • Refactor

    • Improved tab closing interaction in the IDE pane.
    • Updated components for better consistency and performance in the Editor.
    • Renamed and reorganized components for clarity.
  • New Features

    • Added FullScreenTabs component for a more immersive tab management experience.
  • Style

    • Enhanced styling for tabs and related UI elements to improve user experience.
  • Tests

    • Refined test cases for better accuracy and reliability.
  • Performance

    • Enhanced selector functions for better memoization and performance in the IDE.

Copy link
Contributor

coderabbitai bot commented Jul 1, 2024

Walkthrough

Recent updates introduce structural improvements and UI modifications in the IDE's tab management and editor pane components. Notably, changes in tab identifiers and removal of unnecessary sanitization enhance code cleanliness and performance. Key updates include refined imports, layout adjustments, and the incorporation of a new FullScreenTabs component, ensuring a more intuitive and responsive user experience for handling query and JS segments in the editor.

Changes

File(s) or Folder(s) Change Summary
.../Regression/ClientSide/IDE/IDE_Add_Pane_Interactions_spec.ts Altered FileTabs.closeTab() call from "new_query" to "new"
.../Pages/IDE/FileTabs.ts Removed sanitizeString call from tabName method
.../EditorPane/JS/hooks.ts Replaced JSBlankState with ListJS in useJSSegmentRoutes
.../EditorPane/Query/hooks.tsx Replaced QueriesBlankState with ListQuery in useQuerySegmentRoutes
.../selectors/appIDESelectors.ts Refactored selectJSSegmentEditorTabs and selectQuerySegmentEditorTabs to use createSelector
.../EditorPane/EditorPaneSegments.tsx Always render EditorTabs, changed import to "../EditorTabs/SplitScreenTabs", and added gap="spacing-2" to Flex component
.../EditorPane/JS/JSRender.test.tsx, .../EditorPane/Query/QueryRender.test.tsx Updated test identifiers and descriptions (casing changes)
.../EditorPane/JS/List.tsx Moved flex="1" from JSContainer to Flex
.../EditorTabs/Container.tsx Removed id="ide-tabs-container" attribute
.../EditorTabs/FileTabs.test.tsx Refactored imports related to EntityItem, PluginType, FocusEntity, and sanitizeString
.../EditorTabs/FileTabs.tsx Multiple updates: imports, added FILE_TABS_CONTAINER_ID, updated onCloseClick, and replaced FileTab with custom implementation
.../EditorTabs/FullScreenTabs.tsx Added new FullScreenTabs component managing full-screen tab interactions in the IDE
.../EditorTabs/ListButton.tsx Changed import and usage from ListTitle to TabTextContainer
.../EditorTabs/SearchableFilesList.tsx Changed component from ListTitle to TabTextContainer
.../EditorTabs/SplitScreenTabs.tsx Added SplitScreenTabs component for split-screen editing
.../EditorTabs/StyledComponents.tsx Added new styled components for tabs, updated tab styles, and removed ListTitle
.../MainPane/index.tsx Updated EditorTabs import to FullScreenTabs, removed conditional rendering based on ideViewMode
.../hooks.ts Updated useIDETabClickHandlers function parameter actionId to `string
.../utils/URLUtils.ts Removed sanitizeString function

Poem

In the land where code does dwell,
New tabs arise as changes swell,
With panes that flex and screens that split,
Our IDE refines, bit by bit.
No more strings to sanitize,
Just pure and clean code in our eyes.
Full screen, split screen, so much can be seen,
Oh, what a world where we code in serene!


Tip

Early access features: enabled

We are currently testing the following features in early access:

  • OpenAI gpt-4o model for code reviews and chat: OpenAI claims that this model is better at understanding and generating code than the previous models. We seek your feedback over the next few weeks before making it generally available.

Note:

  • You can enable or disable early access features from the CodeRabbit UI or by updating the CodeRabbit configuration file.
  • Please join our Discord Community to provide feedback and report issues.
  • OSS projects are currently opted into early access features by default.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@albinAppsmith albinAppsmith added the ok-to-test Required label for CI label Jul 2, 2024
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between b5c5fb2 and 3e273b6.

Files selected for processing (20)
  • app/client/cypress/e2e/Regression/ClientSide/IDE/IDE_Add_Pane_Interactions_spec.ts (1 hunks)
  • app/client/cypress/support/Pages/IDE/FileTabs.ts (1 hunks)
  • app/client/src/ce/pages/Editor/IDE/EditorPane/JS/hooks.ts (2 hunks)
  • app/client/src/ce/pages/Editor/IDE/EditorPane/Query/hooks.tsx (2 hunks)
  • app/client/src/ce/selectors/appIDESelectors.ts (2 hunks)
  • app/client/src/pages/Editor/IDE/EditorPane/EditorPaneSegments.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/EditorPane/JS/JSRender.test.tsx (4 hunks)
  • app/client/src/pages/Editor/IDE/EditorPane/JS/List.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/EditorPane/Query/QueryRender.test.tsx (17 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/Container.tsx (1 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/FileTabs.test.tsx (4 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/FileTabs.tsx (1 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/FullScreenTabs.tsx (1 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/ListButton.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/SearchableFilesList.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/SplitScreenTabs.tsx (1 hunks)
  • app/client/src/pages/Editor/IDE/EditorTabs/StyledComponents.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/MainPane/index.tsx (2 hunks)
  • app/client/src/pages/Editor/IDE/hooks.ts (1 hunks)
  • app/client/src/utils/URLUtils.ts (1 hunks)
Files not reviewed due to errors (2)
  • app/client/cypress/e2e/Regression/ClientSide/IDE/IDE_Add_Pane_Interactions_spec.ts (no review received)
  • app/client/src/pages/Editor/IDE/EditorTabs/FileTabs.tsx (no review received)
Files skipped from review due to trivial changes (3)
  • app/client/cypress/support/Pages/IDE/FileTabs.ts
  • app/client/src/pages/Editor/IDE/EditorPane/JS/JSRender.test.tsx
  • app/client/src/pages/Editor/IDE/EditorTabs/Container.tsx
Additional context used
Biome
app/client/src/utils/URLUtils.ts

[error] 21-23: This else clause can be omitted because previous branches break early.

Unsafe fix: Omit the else clause.

(lint/style/noUselessElse)

app/client/src/ce/pages/Editor/IDE/EditorPane/Query/hooks.tsx

[error] 214-214: Avoid redundant double-negation.

It is not necessary to use double-negation when a value will already be coerced to a boolean.
Unsafe fix: Remove redundant double-negation

(lint/complexity/noExtraBooleanCast)

Additional comments not posted (61)
app/client/src/pages/Editor/IDE/MainPane/index.tsx (2)

6-6: Update the import path for EditorTabs.

The import path for EditorTabs has been updated to use FullScreenTabs.


21-21: Verify the correct usage of the new EditorTabs import.

Ensure that the FullScreenTabs component is correctly implemented and used here.

Verification successful

The FullScreenTabs component is correctly implemented and used.

  • FullScreenTabs is imported and defined correctly.
  • The component is exported properly.
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the implementation of `FullScreenTabs`.

# Test: Search for the `FullScreenTabs` component. Expect: Correct implementation.
rg --type tsx 'FullScreenTabs'

Length of output: 58



Script:

#!/bin/bash
# Description: Verify the implementation of `FullScreenTabs`.

# Find all .tsx files and search for the FullScreenTabs component within those files
fd -e tsx -x rg 'FullScreenTabs' {}

Length of output: 168

app/client/src/pages/Editor/IDE/EditorTabs/ListButton.tsx (2)

12-12: Update the import path for TabTextContainer.

The import path for TabTextContainer has been updated to use StyledComponents.


53-53: Verify the correct usage of the new TabTextContainer import.

Ensure that the TabTextContainer component is correctly implemented and used here.

Verification successful

The TabTextContainer component is correctly implemented and used.

The TabTextContainer is defined in StyledComponents.tsx and properly imported and used in ListButton.tsx.

  • StyledComponents.tsx:

    export const TabTextContainer = styled.span`
      width: 100%;
      text-overflow: ellipsis;
      white-space: nowrap;
      overflow: hidden;
    `;
  • ListButton.tsx:

    import { ListIconContainer, TabTextContainer } from "./StyledComponents";
    ...
    <TabTextContainer>{item.title}</TabTextContainer>
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the implementation of `TabTextContainer`.

# Test: Search for the `TabTextContainer` component. Expect: Correct implementation.
rg --type tsx 'TabTextContainer'

Length of output: 60



Script:

#!/bin/bash
# Description: Verify the implementation of `TabTextContainer`.

# Find all TypeScript and TSX files and search for `TabTextContainer` component.
fd -e ts -e tsx -x grep -Hn 'TabTextContainer' {}

Length of output: 2092



Script:

#!/bin/bash
# Description: Verify the implementation of TabTextContainer in StyledComponents.tsx.

# Extract the implementation of TabTextContainer from StyledComponents.tsx.
ast-grep --lang tsx --pattern 'export const TabTextContainer = $_' --json

Length of output: 682

app/client/src/pages/Editor/IDE/EditorPane/EditorPaneSegments.tsx (3)

9-9: Update the import path for EditorTabs.

The import path for EditorTabs has been updated to use SplitScreenTabs.


27-27: Verify the correct usage of the gap prop in Flex component.

Ensure that the gap prop is correctly implemented and used here.

Verification successful

The gap prop is correctly implemented and used in the Flex component.

  • app/client/src/widgets/wds/WDSStatsWidget/component/index.tsx
  • app/client/src/pages/Editor/IDE/EditorPane/index.tsx
  • app/client/src/pages/Editor/IDE/EditorPane/EditorPaneSegments.tsx
  • app/client/packages/design-system/widgets/src/testing/ComplexForm.tsx
  • app/client/packages/design-system/widgets/src/components/Icon/stories/Icon.stories.tsx
  • app/client/packages/design-system/widgets/src/components/TextInput/stories/TextInput.stories.tsx
  • app/client/packages/design-system/widgets/src/components/Select/stories/Select.stories.tsx
  • app/client/packages/design-system/widgets/src/components/IconButton/stories/IconButton.stories.tsx
  • app/client/packages/design-system/widgets/src/components/Flex/stories/Flex.stories.tsx
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the implementation of the `gap` prop in `Flex` component.

# Test: Search for the `gap` prop usage in `Flex` component. Expect: Correct implementation.
rg --type tsx 'gap="spacing-2"'

Length of output: 61



Script:

#!/bin/bash
# Description: Verify the implementation of the `gap` prop in `Flex` component.

# Test: Search for the `gap` prop usage in `Flex` component. Expect: Correct implementation.
rg --glob '*.tsx' 'gap="spacing-2"'

Length of output: 1756


32-32: Verify the correct usage of the new EditorTabs import.

Ensure that the SplitScreenTabs component is correctly implemented and used here.

Verification successful

The SplitScreenTabs component is correctly implemented and imported as EditorTabs in EditorPaneSegments.tsx.

  • app/client/src/pages/Editor/IDE/EditorTabs/SplitScreenTabs.tsx: Defines and exports SplitScreenTabs.
  • app/client/src/pages/Editor/IDE/EditorPane/EditorPaneSegments.tsx: Imports SplitScreenTabs as EditorTabs.
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the implementation of `SplitScreenTabs`.

# Test: Search for the `SplitScreenTabs` component. Expect: Correct implementation.
rg --type tsx 'SplitScreenTabs'

Length of output: 59



Script:

#!/bin/bash
# Description: Verify the implementation of `SplitScreenTabs`.

# Test: Search for the `SplitScreenTabs` component in all TypeScript files.
rg 'SplitScreenTabs' --type-add 'typescript:*.{ts,tsx}' --type typescript

Length of output: 385

app/client/src/ce/selectors/appIDESelectors.ts (2)

48-59: Ensure correct keying and filtering in selectJSSegmentEditorTabs.

The selector selectJSSegmentEditorTabs correctly uses keyBy and filter(Boolean) to ensure that only valid items are returned. This looks good, but please verify that all items have unique key properties to avoid any potential conflicts.


61-72: Ensure correct keying and filtering in selectQuerySegmentEditorTabs.

Similar to the selector selectJSSegmentEditorTabs, selectQuerySegmentEditorTabs uses keyBy and filter(Boolean). Ensure that all items have unique key properties to avoid any potential conflicts.

app/client/src/pages/Editor/IDE/EditorTabs/FileTabs.test.tsx (5)

4-4: Verify the necessity of EntityItem import.

The import of EntityItem from @appsmith/entities/IDE/constants seems unused. If it is indeed unnecessary, consider removing it.


27-29: Good implementation of the tab rendering test.

The test correctly verifies that the editorTabsContainer is rendered and that each tab is rendered with the correct content.


32-34: Ensure test IDs are unique and descriptive.

The test IDs used for tabs should be unique and descriptive to avoid any potential conflicts and to make the tests more readable.


48-50: Good implementation of the tab click test.

The test correctly verifies that clicking a tab calls the mockNavigateToTab function with the correct tab.


Line range hint 62-67: Good implementation of the close click test.

The test correctly verifies that clicking the close button calls the mockOnClose function with the correct tab key.

app/client/src/pages/Editor/IDE/EditorTabs/StyledComponents.tsx (5)

2-2: Verify the necessity of Flex import.

The import of Flex from design-system seems necessary for the styled components. Ensure it is used correctly.


4-17: Good documentation for the tab styling logic.

The documentation provides a clear explanation of the logic behind the tab styling. This is helpful for future maintenance.


18-55: Good implementation of StyledTab component.

The StyledTab component is well-defined with appropriate styles for different states (default, active, hover). Ensure that the CSS variables used are defined in the design system.


57-62: Good implementation of TabTextContainer component.

The TabTextContainer component correctly handles text overflow and ensures that the text is displayed appropriately within the tab.


64-74: Good implementation of TabIconContainer component.

The TabIconContainer component is well-defined with appropriate styles for the icon within the tab.

app/client/src/pages/Editor/IDE/EditorTabs/FullScreenTabs.tsx (5)

1-1: Good use of useCallback for setSplitScreenMode.

The useCallback hook is correctly used to memoize the setSplitScreenMode function, which helps in optimizing performance.


28-33: Ensure analytics event is logged correctly.

The analytics event EDITOR_MODE_CHANGE is logged when the editor mode is changed to split screen. Verify that this event is logged correctly and that the event name is consistent with other event names in the project.


36-36: Verify the selector tabsConfig.tabsSelector.

Ensure that the selector tabsConfig.tabsSelector correctly retrieves the tabs for the current segment.


38-40: Ensure correct conditional rendering logic.

The component correctly renders null based on the conditions for isSideBySideEnabled, ideViewMode, and segment. Verify that these conditions are correct and consistent with the application's requirements.


42-64: Good implementation of the FullScreenTabs component.

The FullScreenTabs component is well-defined with appropriate rendering logic for the tabs and the minimize button. Ensure that the CSS classes and data-testid attributes used are consistent with the project's conventions.

app/client/src/pages/Editor/IDE/EditorTabs/SearchableFilesList.tsx (1)

16-16: LGTM! The import is appropriate.

The import of TabTextContainer from StyledComponents aligns with its usage in the file.

app/client/src/pages/Editor/IDE/EditorTabs/SplitScreenTabs.tsx (26)

1-1: LGTM! The import is appropriate.

The import of useCallback from "react" aligns with its usage in the file.


2-2: LGTM! The blank line improves readability.

The blank line enhances the readability and separation of import statements.


3-3: LGTM! The import is appropriate.

The import of FileTabs from "./FileTabs" aligns with its usage in the file.


4-4: LGTM! The import is appropriate.

The import of useDispatch and useSelector from "react-redux" aligns with their usage in the file.


5-5: LGTM! The import is appropriate.

The import of getIDEViewMode and getIsSideBySideEnabled from "selectors/ideSelectors" aligns with their usage in the file.


6-6: LGTM! The import is appropriate.

The import of Container from "./Container" aligns with its usage in the file.


7-7: LGTM! The import is appropriate.

The import of useCurrentEditorState and useIDETabClickHandlers from "../hooks" aligns with their usage in the file.


8-11: LGTM! The import is appropriate.

The import of EditorEntityTab, EditorViewMode from "@appsmith/entities/IDE/constants" aligns with their usage in the file.


12-12: LGTM! The import is appropriate.

The import of TabSelectors from "./constants" aligns with its usage in the file.


13-13: LGTM! The import is appropriate.

The import of Announcement from "../EditorPane/components/Announcement" aligns with its usage in the file.


14-14: LGTM! The import is appropriate.

The import of SearchableFilesList from "./SearchableFilesList" aligns with its usage in the file.


15-15: LGTM! The import is appropriate.

The import of AddButton from "./AddButton" aligns with its usage in the file.


16-16: LGTM! The import is appropriate.

The import of Button and Tooltip from "design-system" aligns with their usage in the file.


17-20: LGTM! The import is appropriate.

The import of MAXIMIZE_BUTTON_TOOLTIP and createMessage from "@appsmith/constants/messages" aligns with their usage in the file.


21-21: LGTM! The import is appropriate.

The import of AnalyticsUtil from "@appsmith/utils/AnalyticsUtil" aligns with its usage in the file.


22-22: LGTM! The import is appropriate.

The import of setIdeEditorViewMode from "actions/ideActions" aligns with its usage in the file.


23-23: LGTM! The blank line improves readability.

The blank line enhances the readability and separation of import statements.


24-24: LGTM! The component declaration is appropriate.

The declaration of the SplitScreenTabs functional component aligns with its usage in the file.


25-25: LGTM! The dispatch declaration is appropriate.

The declaration of the dispatch constant using useDispatch aligns with its usage in the file.


26-26: LGTM! The selector declaration is appropriate.

The declaration of the isSideBySideEnabled constant using useSelector aligns with its usage in the file.


27-27: LGTM! The selector declaration is appropriate.

The declaration of the ideViewMode constant using useSelector aligns with its usage in the file.


28-28: LGTM! The state declaration is appropriate.

The declaration of the segment constant using useCurrentEditorState aligns with its usage in the file.


29-29: LGTM! The handler declarations are appropriate.

The declarations of closeClickHandler and tabClickHandler constants using useIDETabClickHandlers align with their usage in the file.


30-30: LGTM! The blank line improves readability.

The blank line enhances the readability and separation of code blocks.


31-31: LGTM! The configuration declaration is appropriate.

The declaration of the tabsConfig constant using TabSelectors aligns with its usage in the file.


32-32: LGTM! The blank line improves readability.

The blank line enhances the readability and separation of code blocks.

app/client/src/ce/pages/Editor/IDE/EditorPane/JS/hooks.ts (1)

98-98: Ensure the correct component is used.

The component for the route with the key JSEmpty has been changed to ListJS. Ensure that this is the intended component and that it doesn't introduce any regression.

app/client/src/pages/Editor/IDE/EditorPane/JS/List.tsx (1)

80-80: Ensure consistent styling.

The flex attribute has been added to the Flex component. Ensure that the styling is consistent with the rest of the application.

app/client/src/ce/pages/Editor/IDE/EditorPane/Query/hooks.tsx (1)

164-164: Ensure the correct component is used.

The component for the route with the key QueryEmpty has been changed to ListQuery. Ensure that this is the intended component and that it doesn't introduce any regression.

app/client/src/pages/Editor/IDE/hooks.ts (1)

217-217: Ensure the correct parameter type is used.

The closeClickHandler function now takes an actionId parameter of type string | undefined. Ensure that this change is consistent with the rest of the codebase and doesn't introduce any type-related issues.

app/client/src/pages/Editor/IDE/EditorPane/Query/QueryRender.test.tsx (6)

91-91: LGTM!

The test correctly checks for the presence of the new tab and the close button in the blank state.


124-124: LGTM!

The test correctly checks for the presence of the new tab and the close button in the split screen blank state.


164-164: LGTM!

The test correctly checks for the presence of various elements, including the active state of the tabs and the form in full screen mode.


208-208: LGTM!

The test correctly checks for the presence of various elements, including the active state of the tabs and the form in split screen mode.


247-247: LGTM!

The test correctly checks for the presence of various elements, including the new tab and the close button in full screen mode.


281-281: LGTM!

The test correctly checks for the presence of various elements, including the new tab and the close button in split screen mode.

@riodeuno riodeuno self-requested a review July 2, 2024 07:08
@albinAppsmith albinAppsmith changed the title Revert "feat: Overflow tabs list view" fix: Revert "feat: Overflow tabs list view" Jul 2, 2024
@github-actions github-actions bot added the Bug Something isn't working label Jul 2, 2024
@albinAppsmith albinAppsmith merged commit 84bcb84 into release Jul 2, 2024
87 checks passed
@albinAppsmith albinAppsmith deleted the revert-34150-overflow-tabs-list-view branch July 2, 2024 07:26
Shivam-z pushed a commit to Shivam-z/appsmith that referenced this pull request Jul 10, 2024
## Description
This reverts commit 519b53e.


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

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9755650204>
> Commit: 3e273b6
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9755650204&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`

<!-- 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**
  - Improved tab closing interaction in the IDE pane.
- Updated components for better consistency and performance in the
Editor.
  - Renamed and reorganized components for clarity.

- **New Features**
- Added `FullScreenTabs` component for a more immersive tab management
experience.

- **Style**
- Enhanced styling for tabs and related UI elements to improve user
experience.
  
- **Tests**
  - Refined test cases for better accuracy and reliability.

- **Performance**
- Enhanced selector functions for better memoization and performance in
the IDE.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working ok-to-test Required label for CI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants