mirror of https://github.com/kortix-ai/suna.git
chore(dev): upgrade dialog fix
This commit is contained in:
parent
191239d178
commit
db24dc652f
|
@ -26,6 +26,7 @@ import { config } from '@/lib/config';
|
||||||
import { cn } from '@/lib/utils';
|
import { cn } from '@/lib/utils';
|
||||||
import { useInitiateAgentWithInvalidation } from '@/hooks/react-query/dashboard/use-initiate-agent';
|
import { useInitiateAgentWithInvalidation } from '@/hooks/react-query/dashboard/use-initiate-agent';
|
||||||
import { ModalProviders } from '@/providers/modal-providers';
|
import { ModalProviders } from '@/providers/modal-providers';
|
||||||
|
import { useModal } from '@/hooks/use-modal-store';
|
||||||
|
|
||||||
const PENDING_PROMPT_KEY = 'pendingAgentPrompt';
|
const PENDING_PROMPT_KEY = 'pendingAgentPrompt';
|
||||||
|
|
||||||
|
@ -42,6 +43,7 @@ function DashboardContent() {
|
||||||
const personalAccount = accounts?.find((account) => account.personal_account);
|
const personalAccount = accounts?.find((account) => account.personal_account);
|
||||||
const chatInputRef = useRef<ChatInputHandles>(null);
|
const chatInputRef = useRef<ChatInputHandles>(null);
|
||||||
const initiateAgentMutation = useInitiateAgentWithInvalidation();
|
const initiateAgentMutation = useInitiateAgentWithInvalidation();
|
||||||
|
const { onOpen } = useModal();
|
||||||
|
|
||||||
const secondaryGradient =
|
const secondaryGradient =
|
||||||
'bg-gradient-to-r from-blue-500 to-blue-500 bg-clip-text text-transparent';
|
'bg-gradient-to-r from-blue-500 to-blue-500 bg-clip-text text-transparent';
|
||||||
|
@ -96,17 +98,7 @@ function DashboardContent() {
|
||||||
console.error('Error during submission process:', error);
|
console.error('Error during submission process:', error);
|
||||||
if (error instanceof BillingError) {
|
if (error instanceof BillingError) {
|
||||||
console.log('Handling BillingError:', error.detail);
|
console.log('Handling BillingError:', error.detail);
|
||||||
handleBillingError({
|
onOpen("paymentRequiredDialog");
|
||||||
message:
|
|
||||||
error.detail.message ||
|
|
||||||
'Monthly usage limit reached. Please upgrade your plan.',
|
|
||||||
currentUsage: error.detail.currentUsage as number | undefined,
|
|
||||||
limit: error.detail.limit as number | undefined,
|
|
||||||
subscription: error.detail.subscription || {
|
|
||||||
price_id: config.SUBSCRIPTION_TIERS.FREE.priceId,
|
|
||||||
plan_name: 'Free',
|
|
||||||
},
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
setIsSubmitting(false);
|
setIsSubmitting(false);
|
||||||
|
|
|
@ -8,9 +8,12 @@ import { HeroSection } from '@/components/home/sections/hero-section';
|
||||||
import { OpenSourceSection } from '@/components/home/sections/open-source-section';
|
import { OpenSourceSection } from '@/components/home/sections/open-source-section';
|
||||||
import { PricingSection } from '@/components/home/sections/pricing-section';
|
import { PricingSection } from '@/components/home/sections/pricing-section';
|
||||||
import { UseCasesSection } from '@/components/home/sections/use-cases-section';
|
import { UseCasesSection } from '@/components/home/sections/use-cases-section';
|
||||||
|
import { ModalProviders } from '@/providers/modal-providers';
|
||||||
|
|
||||||
export default function Home() {
|
export default function Home() {
|
||||||
return (
|
return (
|
||||||
|
<>
|
||||||
|
<ModalProviders />
|
||||||
<main className="flex flex-col items-center justify-center min-h-screen w-full">
|
<main className="flex flex-col items-center justify-center min-h-screen w-full">
|
||||||
<div className="w-full divide-y divide-border">
|
<div className="w-full divide-y divide-border">
|
||||||
<HeroSection />
|
<HeroSection />
|
||||||
|
@ -28,5 +31,6 @@ export default function Home() {
|
||||||
<FooterSection />
|
<FooterSection />
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,6 +33,7 @@ import { useBillingError } from '@/hooks/useBillingError';
|
||||||
import { useAccounts } from '@/hooks/use-accounts';
|
import { useAccounts } from '@/hooks/use-accounts';
|
||||||
import { isLocalMode, config } from '@/lib/config';
|
import { isLocalMode, config } from '@/lib/config';
|
||||||
import { toast } from 'sonner';
|
import { toast } from 'sonner';
|
||||||
|
import { useModal } from '@/hooks/use-modal-store';
|
||||||
|
|
||||||
// Custom dialog overlay with blur effect
|
// Custom dialog overlay with blur effect
|
||||||
const BlurredDialogOverlay = () => (
|
const BlurredDialogOverlay = () => (
|
||||||
|
@ -57,6 +58,7 @@ export function HeroSection() {
|
||||||
useBillingError();
|
useBillingError();
|
||||||
const { data: accounts } = useAccounts();
|
const { data: accounts } = useAccounts();
|
||||||
const personalAccount = accounts?.find((account) => account.personal_account);
|
const personalAccount = accounts?.find((account) => account.personal_account);
|
||||||
|
const { onOpen } = useModal();
|
||||||
|
|
||||||
// Auth dialog state
|
// Auth dialog state
|
||||||
const [authDialogOpen, setAuthDialogOpen] = useState(false);
|
const [authDialogOpen, setAuthDialogOpen] = useState(false);
|
||||||
|
@ -142,17 +144,8 @@ export function HeroSection() {
|
||||||
// Check specifically for BillingError (402)
|
// Check specifically for BillingError (402)
|
||||||
if (error instanceof BillingError) {
|
if (error instanceof BillingError) {
|
||||||
console.log('Handling BillingError from hero section:', error.detail);
|
console.log('Handling BillingError from hero section:', error.detail);
|
||||||
handleBillingError({
|
// Open the payment required dialog modal instead of showing the alert
|
||||||
message:
|
onOpen("paymentRequiredDialog");
|
||||||
error.detail.message ||
|
|
||||||
'Monthly usage limit reached. Please upgrade your plan.',
|
|
||||||
currentUsage: error.detail.currentUsage as number | undefined,
|
|
||||||
limit: error.detail.limit as number | undefined,
|
|
||||||
subscription: error.detail.subscription || {
|
|
||||||
price_id: config.SUBSCRIPTION_TIERS.FREE.priceId, // Default Free
|
|
||||||
plan_name: 'Free',
|
|
||||||
},
|
|
||||||
});
|
|
||||||
// Don't show toast for billing errors
|
// Don't show toast for billing errors
|
||||||
} else {
|
} else {
|
||||||
// Handle other errors (e.g., network, other API errors)
|
// Handle other errors (e.g., network, other API errors)
|
||||||
|
|
Loading…
Reference in New Issue