- Added SectionContext to manage expanded state for ControlSection components.
- Enhanced ColorPicker to support programmatic focus and highlight animations.
- Introduced useColorControlFocus hook for managing color control references.
- Updated ColorPreview to utilize new focus functionality for color items.
- Added name prop to ColorPicker for identifying color controls in the focus store.
* feat: add AuthDialogWrapper to main layout to work in every route
* refactor: move footer to global components
* refactor: separate route components into layouts, pages, and loading components
* chore: remove AuthDialogWrapper from AI page after it was moved to root layout
* Enhanced Editor (#100)
* refactor: editor page to improve responsiveness
* feat: add editor tab persistance to url
* chore: clean up classNames
* feat: enhance theme color-preview to make it responsive
* feat: add ai chat tab working with local state
* successful responses return a theme color-preview
* error responses return a generic message
* fix: invalid tabs fallback to default tab "colors"
* fix: remove messages scroll animation on tabs change and remove duplicate preview
* fix: minor fixes in classNames
* feat: Chat starts with a default message
* refactor: Enhance editor controls and toolbar buttons to disable when generating theme
- Updated button components to be extendible.
- Refactored buttons to utilize TooltipWrapper for consistent tooltip behavior.
* fix: sync controls tabs by 'value' instead of 'defaultValue'
* fix: load messages from local storage, otherwise set a default initial message
* fix: editor mention list positions correctly and add a tab handler for selecting mention
* fix: build errors due to unused imports
* chore: improve defaults and styles for ai chat interface and editor
* refactor: move AIChat state management to a zustand store
* feat: preserve control tab between edit mode and traditional editor mode
* feat: reset ai chat on editor reset button click
* feat: load chat messages dynamically to avoid layout shifts due to local storage
* fix: Use const id for default ai message to avoid re-render
* fix: Use searchParams for callback url as well after auth
* refactor: Remove unused getEditorConfig code
* feat: Only have 1 handler per postlogin action type
This was causing issues in AI Chat form. AI_GENERATE_FROM_CHAT action
was being scheduled twice because of re-render (caused by lazy-loaded
component)
* fix: Add user message for post login action
* refactor: Only use JSONContent in application state (derive textContent from it)
* feat: Auto-attach current theme to prompt after 1st user message
* feat: clean up AI interface and add community themes section
* feat: AI entrypoint redirect to main Editor and trigger theme generation
* chore: improve styles on ai page
* refactor: clean up AI components components from AI page and Editor page
* refactor: share repeated theme generation logic
* fix: chat messages inconsistent padding and pill buttons disabled state
* fix: build error
* feat: remove AI Generation Dialog and related logic
* feat: show agent response about the theme
* refactor: simplify theme generation logic and improve error handling
* refactor: transition from JSONContent to AIPromptData for theme generation
* feat: add retry functionality for user messages in AI chat interface
* refactor: remove unused loading fallback component and integrate loading indicator in chat messages
* change position of retry button
* feat: Improve system prompt
* refactor: replace createCurrentThemePrompt with attachCurrentThemeMention for improved prompt handling
* feat: add a placeholder for new chat and fix chat area styles
* chore: hide Community themes from AI page
* fix: build errors
* fix: ai theme generation only happens when there is content to be sent as the prompt
* feat: show AI tab in production
* fix: Early return after showing error message in ai chat
* feat: Attach last generated message instead of current theme for chat
* Use @ mentions in example prompts
* Enhance mention rendering in AI prompts and update mention styles in CSS
* skip posthog on dev
* Enhanced Editor (#100)
* refactor: editor page to improve responsiveness
* feat: add editor tab persistance to url
* chore: clean up classNames
* feat: enhance theme color-preview to make it responsive
* feat: add ai chat tab working with local state
* successful responses return a theme color-preview
* error responses return a generic message
* fix: invalid tabs fallback to default tab "colors"
* fix: remove messages scroll animation on tabs change and remove duplicate preview
* fix: minor fixes in classNames
* feat: Chat starts with a default message
* refactor: Enhance editor controls and toolbar buttons to disable when generating theme
- Updated button components to be extendible.
- Refactored buttons to utilize TooltipWrapper for consistent tooltip behavior.
* fix: sync controls tabs by 'value' instead of 'defaultValue'
* fix: load messages from local storage, otherwise set a default initial message
* fix: editor mention list positions correctly and add a tab handler for selecting mention
* fix: build errors due to unused imports
* chore: improve defaults and styles for ai chat interface and editor
* refactor: move AIChat state management to a zustand store
* feat: preserve control tab between edit mode and traditional editor mode
* feat: reset ai chat on editor reset button click
* feat: load chat messages dynamically to avoid layout shifts due to local storage
* fix: Use const id for default ai message to avoid re-render
* fix: Use searchParams for callback url as well after auth
* refactor: Remove unused getEditorConfig code
* feat: Only have 1 handler per postlogin action type
This was causing issues in AI Chat form. AI_GENERATE_FROM_CHAT action
was being scheduled twice because of re-render (caused by lazy-loaded
component)
* fix: Add user message for post login action
* refactor: Only use JSONContent in application state (derive textContent from it)
* feat: Auto-attach current theme to prompt after 1st user message
* feat: clean up AI interface and add community themes section
* feat: AI entrypoint redirect to main Editor and trigger theme generation
* chore: improve styles on ai page
* refactor: clean up AI components components from AI page and Editor page
* refactor: share repeated theme generation logic
* fix: chat messages inconsistent padding and pill buttons disabled state
* fix: build error
* feat: remove AI Generation Dialog and related logic
* feat: show agent response about the theme
* refactor: simplify theme generation logic and improve error handling
* refactor: transition from JSONContent to AIPromptData for theme generation
* feat: add retry functionality for user messages in AI chat interface
* refactor: remove unused loading fallback component and integrate loading indicator in chat messages
* change position of retry button
* feat: Improve system prompt
* refactor: replace createCurrentThemePrompt with attachCurrentThemeMention for improved prompt handling
* feat: add a placeholder for new chat and fix chat area styles
* chore: hide Community themes from AI page
* fix: build errors
* fix: ai theme generation only happens when there is content to be sent as the prompt
* feat: show AI tab in production
* fix: Early return after showing error message in ai chat
* feat: Attach last generated message instead of current theme for chat
* Use @ mentions in example prompts
* Enhance mention rendering in AI prompts and update mention styles in CSS
* fix: missing fade effect on chat messages scroll area and overflow in placeholder buttons
* feat: add user name from session to the chat placeholder component
* feat: Improve system prompt context
* chore: remove unnecessary context from example prompts
* feat: Enhance mention list with auto-scroll functionality and update prompt structures in no-messages placeholder
* feat: Add character limit for AI prompt input and integrate character count extension
* fix: Simplify prompt data handling in AI chat component and adjust textarea behavior during AI generation
* fix: Update theme state handling to include current mode in editor store
* chore: improve styles for consistency
* feat: add fun prompts to chat placeholder
* feat: add typography demo to preview panel
* feat: add responsive cards demo based on shadcn showcase
* fix: typography demo scroll area
* fix: build errors due to components refactor
* fix: wrap typography demo in ExamplesPreviewContainer
* feat: change default theme to match shadcn/ui default
* chore: move some theme previews into a dropdown to keep ui clean
---------
Co-authored-by: Luis Llanes <137589205+llanesluis@users.noreply.github.com>
Co-authored-by: Luis Llanes <luisllaboj@gmail.com>
* Add global state logic to handle ThemePreviewPanel state
* Extend hook useAIThemeGeneration by creating a Store and adding State
* Provide loading and disabled states as feedback to user
* Adjust /editor/ components to work with the new Hooks