Skip to content

feat(framework): overhaul console interactions#754

Merged
innocenzi merged 51 commits intotempestphp:mainfrom
innocenzi:feat/improve-console
Dec 3, 2024
Merged

feat(framework): overhaul console interactions#754
innocenzi merged 51 commits intotempestphp:mainfrom
innocenzi:feat/improve-console

Conversation

@innocenzi
Copy link
Member

@innocenzi innocenzi commented Nov 19, 2024

This pull request overhauls console interactions. The main focus is on interactive components, but this touches a lot of different parts of the console.

I don't recommend reviewing this right now. I might clean up the commits to ease the review process, or update the description when I'm done if updating commits is too much work.

To-do

  • Tests
  • Adapt static components

I will follow-up with these in other pull requests:

  • Progress bar
  • Some non-interactive components
    • Table
    • Lists
  • Non-blocking editor handling
  • Make all existing commands outputs consistent

Some examples:

Search

CleanShot.2024-11-20.at.00.10.45.mp4

Multi-select

CleanShot.2024-11-20.at.00.13.05.mp4

Confirm

CleanShot.2024-11-20.at.00.14.03.mp4

Commands with missing input

CleanShot.2024-11-20.at.00.15.50.mp4

Overview

CleanShot 2024-11-20 at 00 16 21

Command help

CleanShot 2024-11-20 at 00 16 39

Closes #716
Closes #516
Closes #574

@innocenzi innocenzi force-pushed the feat/improve-console branch 3 times, most recently from 8e5bf6e to 4b882c1 Compare November 25, 2024 22:46
@innocenzi
Copy link
Member Author

innocenzi commented Nov 26, 2024

This is now ready for review. It's a lot of changes 🙈

I recommend playing locally with components to try them out in addition to reviewing the code.

The failing tests look like line-ending issues on Windows, but I don't have a Windows machine to test. 😬

@innocenzi innocenzi marked this pull request as ready for review November 26, 2024 00:24
@brendt
Copy link
Member

brendt commented Nov 26, 2024

One thing we need to account for is light themes: the description text is the same over there as the bg color:

Screenshot 2024-11-26 at 14 40 16
Screenshot 2024-11-26 at 14 40 11

@innocenzi
Copy link
Member Author

@brendt I wonder if that's an issue with your theme—the default VS Code light theme shows this:

CleanShot 2024-11-26 at 20 13 54

The descriptions do use "foreground white", but normally, terminals should invert the color automatically depending on the theme... well, I went ahead and removed explicit fg-white, which hopefully should work for you as well

@brendt
Copy link
Member

brendt commented Nov 27, 2024

I ran into a null error with the new console stuff during a livestream :) https://www.youtube.com/live/BRCkmA-XUCI?si=WqypvZW_nItV63hx&t=906

@innocenzi
Copy link
Member Author

Good catch! Fixed that. It's always in demos that something goes wrong 😌

@innocenzi innocenzi requested a review from brendt November 28, 2024 14:52
@brendt
Copy link
Member

brendt commented Dec 3, 2024

Feel free to merge after the conflicts have been fixed :)

@innocenzi innocenzi force-pushed the feat/improve-console branch from 5a113e2 to 53e03e0 Compare December 3, 2024 12:57
@innocenzi innocenzi merged commit e966ecb into tempestphp:main Dec 3, 2024
@innocenzi innocenzi deleted the feat/improve-console branch December 3, 2024 13:04
@innocenzi
Copy link
Member Author

🎉

@brendt
Copy link
Member

brendt commented Dec 4, 2024

Hype! 😱

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants