Skip to content

feat: add chat-header feature and sliding container #11045

Merged
Wallgau merged 31 commits intoplayground-main-forkfrom
feat/playground-header
Dec 26, 2025
Merged

feat: add chat-header feature and sliding container #11045
Wallgau merged 31 commits intoplayground-main-forkfrom
feat/playground-header

Conversation

@Wallgau
Copy link
Collaborator

@Wallgau Wallgau commented Dec 16, 2025

-Add sliding playground layout (SimpleSidebar + sliding container + store) and toolbar button integration to open it directly.

  • Add chat header/session components and hooks (SessionSelector, SessionRename, ChatHeaderTitle, use-get-flow-id, playgroundStore).
  • Legacy playground modal code kept commented with TODO; Messages remain commented out.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 16, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/playground-header

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Wallgau Wallgau requested a review from lucaseduoli December 16, 2025 19:44
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 16, 2025
Copy link
Collaborator

@lucaseduoli lucaseduoli left a comment

Choose a reason for hiding this comment

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

Just some code nit picks so that we can maintain a pattern with the existing codebase.

Functionally, the only animations missing are the sessions sidebar when enabling fullscreen, and the Playground button shrinking.

}
// Reset after a short delay to allow the select to close
setTimeout(() => {
setSelectValue("");
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this going to be necessary?

import { useGetAddSessions } from "../../chat-view/chat-header/hooks/use-get-add-sessions";
import { useSlidingContainerStore } from "../stores/sliding-container-store";

const TRANSITION_MS = 300;
Copy link
Collaborator

Choose a reason for hiding this comment

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

We should move this to the constants file

if (transitionTimer.current) {
window.clearTimeout(transitionTimer.current);
}
transitionTimer.current = window.setTimeout(() => {
Copy link
Collaborator

Choose a reason for hiding this comment

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

You should use framer motion transitions instead, so that this doesn't become a problem

} from "@/components/ui/select-custom";
import { cn } from "@/utils/utils";

const MENU_ITEM_CLASS = "cursor-pointer px-3 py-2 focus:bg-muted";
Copy link
Collaborator

Choose a reason for hiding this comment

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

You should use a custom class in applies.css instead

}

const STROKE_WIDTH = ENABLE_PUBLISH ? 2 : 1.5;
const ICON_CLASS = "h-4 w-4 transition-all flex-shrink-0";
Copy link
Collaborator

Choose a reason for hiding this comment

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

this should use a custom class as well

hasIO: boolean;
}

const STROKE_WIDTH = ENABLE_PUBLISH ? 2 : 1.5;
Copy link
Collaborator

Choose a reason for hiding this comment

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

We can define just one stroke width for both

@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 17, 2025
@Wallgau Wallgau requested a review from lucaseduoli December 17, 2025 20:50
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 18, 2025
Olfa Maslah and others added 9 commits December 18, 2025 12:15
…ound button to use global playground store and removed stale props; fixed simple-sidebar uncontrolled setOpen to handle function updaters; hardened session rename edit timing; added chat header utilities (session title, session management hooks/components, logs modal, sessions dropdown/sidebar); introduced sliding playground container and supporting hooks/stores/constants/styles; refreshed publish dropdown styling. FlowToolbar now drives playground visibility via usePlaygroundStore (isPlaygroundOpen / setPlaygroundOpen) and tracks analytics off the store state.
@Wallgau Wallgau force-pushed the feat/playground-header branch from 07b77b8 to 4be141e Compare December 18, 2025 17:17
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 18, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 18, 2025
@github-actions github-actions bot added the enhancement New feature or request label Dec 21, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 22, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 23, 2025
@Wallgau Wallgau changed the base branch from main to playground-main-fork December 23, 2025 21:24
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 23, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 23, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 23, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 23, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 24, 2025
@github-actions github-actions bot added enhancement New feature or request and removed enhancement New feature or request labels Dec 24, 2025
Copy link
Collaborator

@lucaseduoli lucaseduoli left a comment

Choose a reason for hiding this comment

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

LGTM!

@github-actions github-actions bot added the lgtm This PR has been approved by a maintainer label Dec 26, 2025
@Wallgau Wallgau marked this pull request as ready for review December 26, 2025 16:12
@Wallgau Wallgau merged commit 594490b into playground-main-fork Dec 26, 2025
21 checks passed
@Wallgau Wallgau deleted the feat/playground-header branch December 26, 2025 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request lgtm This PR has been approved by a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants