* update package locks to avoid conflict
* Refactor AI Generation with AI SDK v5 (#210)
* refactor(wip): Whole Chat implementation
* fix: Deps
* chore: Update types and create tool to handle theme generation
* chore: Add hook and component to handle feedback text
* chore: Check for themeStyles in asssiatant metadata
* feat: Improve messages styles and feedback
* chore: Update react-hook-form deps
* chore: Improve Messages display
* chore: Show a banner when theme is generating
* chore: Optimize the Messages syncing
* feat: Add debug button to MessageActions in dev mode
* chore: messages
* chore: Improve System prompt + tools + utils
* fix: correctly display User messages with only images
* feat: Handle errors in UI and adapt to AI sdk
* feat: Use tool output instead of custom data parts
* chore: System prompt and schema context
* chore: Gemini 2.5 pro as the default model
* refactor: Change name to Chat Context and apply generated theme automatically
* chore: Update ai packages to latest version
* feat: Stop ongoing request before starting a new chat
* feat: Refactor logic for Scroll start/end sentinels
* feat: Improve UI streaming with AI Elements and Stream Text utils
* chore: Generate theme types and logic
* feat: Allow customize the speed of streaming text
* refactor: Theme generation utils
* fix: Avoid duplicated Mention references
* styles: Improve Chat error banner
* feat: Enhance Prompt core implementation
* feat: Implement enhance prompt in components
* chore: Add TODOS comments
* chore: Remove Openai provider
* chore: Update AI adk packages
* fix: Free request constant
---------
Co-authored-by: Sahaj Jain <82111591+jnsahaj@users.noreply.github.com>
* update lockfile
* fix import
* fix types
* chore: Trigger theme generation before transitioning to editor page
* refactor: Move AI sdk specific code into Lib and update imports
* chore: Provide model ID to record usage util
* refactor: Multi model provider convention
* fix types
* refactor: Use Zustand persist middleware versioning
* feat: Improve prompts and context
* feat: Optimize streaming JSONContent into text area
* chore: Improve Theme Generation prompt
* feat: Improve prompt
* feat: Add subscription checks for enhancing prompt and Posthog tracking
---------
Co-authored-by: Luis Llanes <137589205+llanesluis@users.noreply.github.com>
Co-authored-by: Luis Llanes <luisllaboj@gmail.com>
* chore: add @base-ui-components/react dependency and update pnpm-lock.yaml
* feat: add custom hook useMediaQuery for responsive design
* refactor: streamline button component code for improved readability
* refactor: enhance ScrollArea component with viewport className prop and improve className organization
* refactor: replace Dialog component with ResponsiveDialog for improved responsiveness and UI consistency
* feat: introduce ResponsiveDialog component for enhanced mobile and desktop dialog handling
* refactor: update Next.js configuration to use TypeScript type for NextConfig
* refactor: replace Dialog with ResponsiveDialog in CardsChat component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in ShareDialog component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in FigmaExportDialog component for improved UI consistency and responsiveness.
- Use `Scrollarea` for cleaner scrollbar and structure it a bit different, so scrollbar's doesn't overflow beyond dialog.
* refactor: replace Dialog with ResponsiveDialog in ThemeSaveDialog component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in PodcastEmptyPlaceholder component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in ChatImagePreview component for improved UI consistency and responsiveness
* feat: add Tabs component based on BaseUI with customizable TabsList, TabsTrigger, TabsContent, and TabsIndicator for improved UI navigation
* refactor: replace Dialog with ResponsiveDialog in CssImportDialog component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in AuthDialog component for improved UI consistency and responsiveness
* refactor: replace Dialog with ResponsiveDialog in MCPDialog component for improved UI consistency and responsiveness
- Replace `Tabs` component with new Base UI based `Tabs` component
* refactor: update Tabs and Select components in CodePanel for improved UI consistency
- Replace old Tabs component with new Base UI based Tabs component
- Add TabsIndicator for enhanced visual feedback
- Adjust SelectContent z-index for better layering
* refactor: replace Dialog with ResponsiveDialog in CodePanelDialog component for improved UI consistency and responsiveness
- fix: accessibility issue cased by missing title and description for dialog
* refactor: replace Dialog with ResponsiveDialog in ContrastChecker component for improved UI consistency and responsiveness
- Disable `Issues` button, when there's no issue
- Sticky Header for each section for better messaging for each section especially on mobile
* refactor: adjust layout and spacing in FigmaExportDialog for improved visual consistency
- Update margin and padding for better alignment of elements
- Remove unnecessary line breaks to streamline the code
* refactor: adjust layout and spacing in GetProDialog and AIChatDemo components for improved visual consistency
- Update positioning of elements in GetProDialog for better alignment
- Remove unnecessary inset from AIChatDemo for cleaner layout
* refactor: enhance layout in CodePanelDialog for improved responsiveness
- Adjust max-height for better display on smaller screens
- Maintain overall visual consistency with other dialog components
* refactor: enhance CodePanel layout with additional ScrollBar orientations
- Add horizontal and vertical ScrollBars for improved navigation within code panels
- Adjust padding in CodePanelDialog for better spacing and visual consistency
* refactor: clean up TabsIndicator component by removing commented code
- Remove unnecessary commented-out code for better readability
- Streamline TabsIndicator implementation for improved clarity
* refactor: update ResponsiveDialog components to use isDesktop for breakpoint detection
- Replace isMobile with isDesktop in ResponsiveDialog components for improved clarity
- Ensure consistent behavior across dialog and drawer implementations based on desktop view
* refactor: enhance ResponsiveDialogContent with additional props for customization (v1.4) update
- Introduce closeButtonClassName and dragHandleClassName props for better styling control
- Update context initialization to allow null values for improved type safety
- Refactor ResponsiveDialogContent to streamline rendering logic and improve readability
* refactor: reorganize imports and clean up AuthDialog component for improved readability
- Rearranged import statements for better structure
- Removed unnecessary props from ResponsiveDialogContent for cleaner layout
- Enhanced overall code clarity and maintainability
* refactor: reorganize imports in MCPDialog for improved clarity and consistency
- Rearranged import statements for better structure
- Cleaned up component imports to enhance readability
- Maintained overall code organization for future maintainability
* refactor: reorganize imports and enhance layout in various dialog components for improved readability
- Cleaned up and rearranged import statements for better structure
- Updated ResponsiveDialogContent and ResponsiveDialogHeader for consistent padding and spacing
- Enhanced overall layout and visual consistency across multiple dialog components
* refactor: add iOS detection to adjust repositioning of inputs in ResponsiveDialog
* chore: allow overriding ControlSection classNames
* feat: Support Google Fonts API and load fonts dynamically
* feat: Enforce System Prompt to use Google Fonts API if needed
* styles: Improve GoogleFontPicker styles
* feat: Pull Fonts from fileSystem instead of hitting the Google Fonts API every time
* feat: Improve System Prompt to reference Google Fonts
* refactor: Use Next.js Cache instead of manually fetching and reading from the filesystem
* feat: Only enable Font picker fetch when it's open
* chore: Remove JSON for Google Fonts catalogue
* feat: Scroll to selected font if it's already fetched and add clean search button
* chore: update imports
* fix: dashboard preview
* feat: Add shadcraft dialog
---------
Co-authored-by: Luis Llanes <luisllaboj@gmail.com>
* chore: allow overriding ControlSection classNames
* feat: Support Google Fonts API and load fonts dynamically
* feat: Enforce System Prompt to use Google Fonts API if needed
* styles: Improve GoogleFontPicker styles
* feat: Pull Fonts from fileSystem instead of hitting the Google Fonts API every time
* feat: Improve System Prompt to reference Google Fonts
* refactor: Use Next.js Cache instead of manually fetching and reading from the filesystem
* feat: Only enable Font picker fetch when it's open
* chore: Remove JSON for Google Fonts catalogue
* feat: Scroll to selected font if it's already fetched and add clean search button
* chore: update imports
* fix: dashboard preview
---------
Co-authored-by: Luis Llanes <luisllaboj@gmail.com>
* fix: border radius and overflow in ImagePreview component
* fix: Proper support for SVGs and UI feedback when errors occur
* SVG files are treated and displayed as Images in the UI
* SVG files are processed as Markup Text to send to the API
* Remove support for GIFs
* chore: improve system prompt to handle SVGs properly
* styles: Add border radius to uploaded image preview when loading
* chore: improve ThemePresetSelect
* Remove double border and shadow
* Add "Default" themes at the top and make it searchable
* Change text size and padding for consistency
* chore: add Manage text back for Managing Saved themes
* feat: Add polar for tweakcn-plus checkout
* migrate to polar nextjs for more control
* chore: save closable chat suggestions state as a preference in local storage
* chore: improve color contrast in user UI message
* feat: add pro features components
* chore: update TextArea styles
* feat: adjust theme generation types, functions and API to support adding an image
* feat: AI components now support and display images
* feat: add support for multiple images
* feat: add support for multiple images to components
* feat: support image only prompts and clean up API code
* chore: save closable chat suggestions state as a preference in local storage
* chore: improve color contrast in user UI message
* feat: add pro features components
* chore: update TextArea styles
* feat: adjust theme generation types, functions and API to support adding an image
* feat: AI components now support and display images
* feat: add support for multiple images
* feat: add support for multiple images to components
* feat: support image only prompts and clean up API code
* add checkout link support
* add ai-usage schema and actions
* feat: dashboard: add AI usage stats with bar chart
* feat: enforce subscription limits and improved error handling for AI theme generation
* feat: Integrate alert-banner with actual usage
* fix: pricing navigation
* feat: Checkout link generation
* feat: add quick action to create a theme from an image in ai page
* feat: add drag and drop for images
* chore: move Image Upload constant vars and update imports
* feat: improve feedback while theme is being generated
* feat: Add pricing page UI
* refactor: Dashboard migration to Settings page
* feat: improve pricing page
* feat: add auth check in checkout and refactor implementation for consistency and typesafety
* refactor: adjust code and API to follow new types and useQuery hook typesafety
* refactor: alert banner displays correctly and uses the new subscription hook
* feat: improve UI feedback for Pro users
* feat: upload images by pasting (cmd/crtl + v)
* feat: add Go Pro dialog, and global store (no implemented in app yet)
* chore(WIP): scaffold of Pro subscription modal show logic
* feat: Add openProModal logic to handleGenerateTheme in chat-interface
* chore: save closable chat suggestions state as a preference in local storage
* chore: improve color contrast in user UI message
* feat: add pro features components
* chore: update TextArea styles
* feat: adjust theme generation types, functions and API to support adding an image
* feat: AI components now support and display images
* feat: add support for multiple images
* feat: add support for multiple images to components
* feat: support image only prompts and clean up API code
* add ai-usage schema and actions
* feat: dashboard: add AI usage stats with bar chart
* feat: enforce subscription limits and improved error handling for AI theme generation
* feat: Integrate alert-banner with actual usage
* fix: pricing navigation
* feat: Checkout link generation
* feat: add quick action to create a theme from an image in ai page
* feat: add drag and drop for images
* chore: move Image Upload constant vars and update imports
* feat: improve feedback while theme is being generated
* feat: Add pricing page UI
* refactor: Dashboard migration to Settings page
* feat: improve pricing page
* feat: add auth check in checkout and refactor implementation for consistency and typesafety
* refactor: adjust code and API to follow new types and useQuery hook typesafety
* refactor: alert banner displays correctly and uses the new subscription hook
* feat: improve UI feedback for Pro users
* feat: upload images by pasting (cmd/crtl + v)
* feat: add Go Pro dialog, and global store (no implemented in app yet)
* chore(WIP): scaffold of Pro subscription modal show logic
* feat: Add openProModal logic to handleGenerateTheme in chat-interface
* refactor: follow naming convention
* chore: refactor components and layout/pages for consistency
* fix: enforce auth checks or redirect in /settings routes
* chore: update Go Pro dialog
* refactor: create reusable theme toggle component
* feat: add Get Pro dialog to header
* chore: rename GoPro dialog to GetPro and update imports
* feat: add AI generation section to Home page and adjust Get Pro dialog
* chore: save closable chat suggestions state as a preference in local storage
* chore: improve color contrast in user UI message
* feat: add pro features components
* chore: update TextArea styles
* feat: adjust theme generation types, functions and API to support adding an image
* feat: AI components now support and display images
* feat: add support for multiple images
* feat: add support for multiple images to components
* feat: support image only prompts and clean up API code
* add ai-usage schema and actions
* feat: dashboard: add AI usage stats with bar chart
* feat: enforce subscription limits and improved error handling for AI theme generation
* feat: Integrate alert-banner with actual usage
* fix: pricing navigation
* feat: Checkout link generation
* feat: add quick action to create a theme from an image in ai page
* feat: add drag and drop for images
* chore: move Image Upload constant vars and update imports
* feat: improve feedback while theme is being generated
* feat: Add pricing page UI
* refactor: Dashboard migration to Settings page
* feat: improve pricing page
* feat: add auth check in checkout and refactor implementation for consistency and typesafety
* refactor: adjust code and API to follow new types and useQuery hook typesafety
* refactor: alert banner displays correctly and uses the new subscription hook
* feat: improve UI feedback for Pro users
* feat: upload images by pasting (cmd/crtl + v)
* feat: add Go Pro dialog, and global store (no implemented in app yet)
* chore(WIP): scaffold of Pro subscription modal show logic
* feat: Add openProModal logic to handleGenerateTheme in chat-interface
* refactor: follow naming convention
* chore: refactor components and layout/pages for consistency
* fix: enforce auth checks or redirect in /settings routes
* chore: update Go Pro dialog
* refactor: create reusable theme toggle component
* feat: add Get Pro dialog to header
* chore: rename GoPro dialog to GetPro and update imports
* feat: add AI generation section to Home page and adjust Get Pro dialog
* feat: Add customer portal
* feat: add chat input draft persistence (not images)
* styles: improve styles for ai generation and alert banner defaults
* feat: Send whole chat context to AI
* fix: silly typo lol
* feat: support images persistence and sync
* feat: edit message (text, mentions and images)
* fix: add eslint-disable for exhaustive-deps warnings
* chore: fix build error & improve text and styles in suggested prompts
* refactor: handle session and subscription checks and handle post login actions
* migrate to turbopack
* refactor: use reducer builder pattern to sync ai-draft-store with image-uploader
* fix: ai-usage computation: account for abort
* feat: Theme limit handling for pro tier
* refactor: remove duplicate code from ai-chat-form and chat-input
* feat: Add faq to pricing page
* fix: /dashboard navigations -> /settings
* feat: update ui for success page
* feat: Migrate ai chat and draft message store to idb-keyval
* feat: move subscription details in-house
* generate migration
* fix: build err
* styles: improve Message UI
* fix: allow scroll in GoPro dialog chat preview
* feat: improve AI usage feedback when theme generation when success or failure
* feat: Message UI enhancement when assistant message is error feedback
* feat: add latest features in /ai page and refactor Core Theme Generation logic hooks
* styles: improve styles and layout for consistency
* styles: improve styles in settings pages for consistency
* cancelled theme doesn't cost requests
* update next to latest (for turbopack compat)
* fail build if polar webhook secret is not set
* update polar sdk and nextjs plugin
* feat: Create customer before creating checkout for them
* chore: save closable chat suggestions state as a preference in local storage
* chore: improve color contrast in user UI message
* feat: add pro features components
* chore: update TextArea styles
* feat: adjust theme generation types, functions and API to support adding an image
* feat: AI components now support and display images
* feat: add support for multiple images
* feat: add support for multiple images to components
* feat: support image only prompts and clean up API code
* add ai-usage schema and actions
* feat: dashboard: add AI usage stats with bar chart
* feat: enforce subscription limits and improved error handling for AI theme generation
* feat: Integrate alert-banner with actual usage
* fix: pricing navigation
* feat: Checkout link generation
* feat: add quick action to create a theme from an image in ai page
* feat: add drag and drop for images
* chore: move Image Upload constant vars and update imports
* feat: improve feedback while theme is being generated
* feat: Add pricing page UI
* refactor: Dashboard migration to Settings page
* feat: improve pricing page
* feat: add auth check in checkout and refactor implementation for consistency and typesafety
* refactor: adjust code and API to follow new types and useQuery hook typesafety
* refactor: alert banner displays correctly and uses the new subscription hook
* feat: improve UI feedback for Pro users
* feat: upload images by pasting (cmd/crtl + v)
* feat: add Go Pro dialog, and global store (no implemented in app yet)
* chore(WIP): scaffold of Pro subscription modal show logic
* feat: Add openProModal logic to handleGenerateTheme in chat-interface
* refactor: follow naming convention
* chore: refactor components and layout/pages for consistency
* fix: enforce auth checks or redirect in /settings routes
* chore: update Go Pro dialog
* refactor: create reusable theme toggle component
* feat: add Get Pro dialog to header
* chore: rename GoPro dialog to GetPro and update imports
* feat: add AI generation section to Home page and adjust Get Pro dialog
* feat: Add customer portal
* feat: add chat input draft persistence (not images)
* styles: improve styles for ai generation and alert banner defaults
* feat: Send whole chat context to AI
* fix: silly typo lol
* feat: support images persistence and sync
* feat: edit message (text, mentions and images)
* fix: add eslint-disable for exhaustive-deps warnings
* chore: fix build error & improve text and styles in suggested prompts
* refactor: handle session and subscription checks and handle post login actions
* migrate to turbopack
* refactor: use reducer builder pattern to sync ai-draft-store with image-uploader
* fix: ai-usage computation: account for abort
* feat: Theme limit handling for pro tier
* refactor: remove duplicate code from ai-chat-form and chat-input
* feat: Add faq to pricing page
* fix: /dashboard navigations -> /settings
* feat: update ui for success page
* feat: Migrate ai chat and draft message store to idb-keyval
* feat: move subscription details in-house
* generate migration
* fix: build err
* styles: improve Message UI
* fix: allow scroll in GoPro dialog chat preview
* feat: improve AI usage feedback when theme generation when success or failure
* feat: Message UI enhancement when assistant message is error feedback
* feat: add latest features in /ai page and refactor Core Theme Generation logic hooks
* styles: improve styles and layout for consistency
* styles: improve styles in settings pages for consistency
* cancelled theme doesn't cost requests
* update next to latest (for turbopack compat)
* fail build if polar webhook secret is not set
* update polar sdk and nextjs plugin
* feat: Create customer before creating checkout for them
---------
Co-authored-by: Luis Llanes <luisllaboj@gmail.com>